24번 ETH 송금하고 받기

Justin Gee
Mar 19, 2023

--

코드

interface BB {
function setReceiveEtherAddress(address payable _contractAddress) external;
function contractAddress() external returns(address payable);
}
contract BBBB {
address payable public web3onlinejudge = payable(0x21867762b9b90EedA877a7879f86Fa655C4bE5Ef);
event aaa(address payable);
receive() external payable {}
function getReceiveEtherAddress() public {
emit aaa(BB(web3onlinejudge).contractAddress());
}
function setReceiveEtherAddress() public {
BB(web3onlinejudge).setReceiveEtherAddress(payable(this));
}
}

과정

  1. 문제 컨트랙트로 임의의 ETH 전송
  2. contract BBBB 배포
  3. setReceiveEtherAddress() 함수 실행
  4. 제출버튼 클릭

핵심

  • receive function이 있어야 한다.

--

--