Solidityにおいて、自身のコントラクトアドレスを取得する方法について解説します。
構文
Solidityで自身のコントラクトアドレスを取得するには、以下のようにします。
address(this)
サンプルコード
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 <0.9.0;
contract Test {
function getMyAddress() public view returns(address) {
// 自身のコントラクトアドレスを取得
return address(this);
}
}

thisというのは“自分自身”つまり自身のコントラクトという意味ですね。それをaddress関数の引数に渡すことで、自身のコントラクトアドレスを取得しています。