Menu
Coddy logo textTech

저장 배열

Coddy Solidity 여정의 기초 섹션에 포함된 레슨. 53개 중 38번째.

컨트랙트 범위에서 선언된 동적 배열은 스토리지에 저장됩니다. 요소를 추가하려면 push(value)를 사용하고 마지막 요소를 제거하려면 pop()을 사용하세요. 빈 배열에서 pop을 호출하면 되돌려집니다. 값이 추가되거나 제거됨에 따라 길이가 변경됩니다.

컨트랙트 범위에서 다음을 선언하세요:

uint256[] values;

제공된 main 함수 내부에서 사용하세요:

values.push(6);
values.push(15);
values.pop();
console.log(values.length);
console.log(values[0]);

이 테스트에서 배열은 비어 있는 상태로 시작합니다. 두 번의 push로 두 개의 요소가 생성되고, pop은 두 번째 요소를 제거합니다. 첫 번째 요소는 여섯으로 남습니다. 스토리지 배열을 업데이트하면 컨트랙트 상태가 변경되므로 main은 view일 수 없습니다.

push와 pop은 동적 스토리지 배열의 끝에서 배열을 변경합니다.

challenge icon

챌린지

쉬움

values라는 이름의 동적 uint256 저장 배열을 선언하세요. a, b, c를 추가하고, 마지막 요소를 제거한 다음 길이와 남아 있는 마지막 값을 출력하세요.

테스트는 다음 순서로 main에 인수를 전달합니다: uint256 a, uint256 b, uint256 c. 각 테스트는 새로운 컨트랙트 상태로 시작합니다.

요청된 출력을 위해 console.log를 사용하세요. 요청된 값만 한 줄에 하나씩 출력하고, 과제에서 지정하지 않는 한 추가 레이블은 출력하지 마세요.

REQUIRED OUTPUT FORMAT: [번역한 콘텐츠]

직접 해보기

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 a, uint256 b, uint256 c) external  {
        // 여기에 솔루션을 작성하세요.
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: Solidity 플레이그라운드