아하
생활

생활꿀팁

대단한크낙새41
대단한크낙새41

이더리움 트랜잭션 수수료 처리하는 로직에 대해 자세히 설명하는 자료가 있을까요?

이더리움 수수료가 제가 생각하는 상식과는 다르게 책정되는 것 같은데, 트랜잭션 수수료 관련 상세자료가 있을까요?


코드상으로는 더 복잡한데 수수료가 더 적게 책정되는 경우가 있습니다.


예를 들어 아래 코드에서 배열에 하나의 변수를 넣어주는 func1과 func2중 for문으로 감싼 func2 실행 수수료가 더 적게 나옵니다.

이유가 뭘까요?


uint256 a[10];


function func1() {

A[0] = 100;

}


function func2() {

for(uint256 i=0; i<1; i++) {

a[i] =100;

}

}


    55글자 더 채워주세요.
    1개의 답변이 있어요!
    • 밝은카구284
      밝은카구284

      안녕하세요. 류쨩입니다.


      pragma solidity ^0.4.25; contract test {     uint256[10] a;     function func1() public {         a[0] = 100;     }          function func2() public {              for(uint256 i=0; i < 1; i++) {                  a[i] =100;         }     } }


      위와 같은 코드일 때, func2가 가스비가 더 소모되게 됩니다. uint256 i / 그 외 조건 검사와 증감 연산자등 때문입니다.


      [func1() 호출]


      [func2 호출]