In remix IDE when we deployed the contract there is address on it. What is that address and what that address is used for? Like Ethereum account address is use for transaction and identify the user on blockchain network .
There are two types of addresses in Ethereum.
External address and Internal address.
External address is the one you are talking of ie. the address associated with user which has its corresponding private key.
Internal address is the address of smart contract. When you deploy a smart contract in Ethereum, it is deployed on an address.
The address for an Ethereum contract is deterministically computed from the address of its creator ( sender ) and how many transactions the creator has sent ( nonce ). The sender and nonce are RLP encoded and then hashed with Keccak-256. Here
This address is required to interact with the smart contract.
For example, in your sample contract code with function
toString, how do you invoke that function? To call
toString function you first need to load the smart contract. Following is the pseudocode:
mycontract = Contract.load(mycontract_address); mycontract.toString(data);