0
pragma solidity ^0.8.2;

contract Token {
    mapping(address => uint)public balances;
    mapping(address => mapping(address => uint))public allowance;

    int public totalSupply = 10000 * 10 ** 18;
    string public name = "JeddCoin";
    string public symbol = "JEDD";
    uint public decimals = 18;

   event Transfer(address indexed from, address indexed to, uint value);
   event Approval(address indexed owner, address indexed spender, uint 
value);

   constructor() {
       balances[msg.sender] = totalSupply;
   } 

   function balanceOf(address owner)public view returns(uint){
   return balances[owner];
   }

   function transfer(address to, uint value)public returns(bool){
       require(balanceOf(msg.sender)>= value, 'balance too low');
       balances[to] += value;
       balances[msg.sender] -= value;
       emit Transfer (msg.sender, to, value);
       return true;
   
   }
   function transferFrom(address from, address to, uint value) public 
returns(bool) {
       require(balanceOf(from) >= value, 'balance too low');
       require(allowance[from][msg.sender] >= value, 'allowance too low');
       balances[to] += value;
       balances[from] -= value;
       emit Transfer(from, to, value);
       return true;
   }

   function aprove(address spender, uint value)public returns(bool){
       allowance[msg.sender][spender] = value;
       emit Approval(msg.sender, spender, value);
       return true;
    }
}   
2
  • uint vs int May 4 at 17:33
  • how do i convert int to uint
    – Jеdd
    May 4 at 17:35
1

You are trying to mix uint with int: totalSupply is of type int while balances maps to uint.

Since your totalSupply can't ever be under zero, you should simply change that to be uint. That way you don't have to convert anything and your types are more correct.

0

Since you have declared balances as uint in line 4, totalSupply should also have the type uint.

Change the 7th line to uint public totalSupply = 10000 * 10 ** 18; and it will not show the error.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.