Menu
Coddy logo textTech

Array di archiviazione

Fa parte della sezione Fondamenti del percorso Solidity di Coddy. Lezione 38 di 53.

Un array dinamico dichiarato a livello di contratto risiede in storage. Usa push(value) per aggiungere un elemento e pop() per rimuovere l’ultimo. Chiamare pop su un array vuoto causa un revert. La sua lunghezza cambia quando vengono aggiunti o rimossi valori.

Dichiara questo a livello di contratto:

uint256[] values;

Usalo all’interno della funzione main fornita:

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

L’array inizia vuoto in questo test. Due operazioni push creano due elementi e pop rimuove il secondo. Il primo rimane sei. L’aggiornamento di un array in storage modifica lo stato del contratto, quindi main non può essere view.

push e pop modificano un array dinamico in storage alla sua estremità.

challenge icon

Sfida

Facile

Dichiara un array di archiviazione dinamico di tipo uint256 chiamato values. Aggiungi a, b e c, rimuovi l’ultimo elemento, poi stampa la lunghezza e il valore rimanente dell’ultimo elemento.

I test passano gli argomenti a main in quest’ordine: uint256 a, uint256 b, uint256 c. Ogni test inizia con uno stato del contratto nuovo.

Usa console.log per l’output richiesto. Stampa solo i valori richiesti, uno per riga, senza etichette aggiuntive, a meno che il compito non le specifichi.

Provalo tu

// 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  {
        // Scrivi qui la tua soluzione.
    }
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Playground Solidity