Menu
Coddy logo textTech

Arrays de almacenamiento

Parte de la sección Fundamentos del Journey de Solidity de Coddy. Lección 38 de 53.

Un array dinámico declarado en el ámbito del contrato vive en el almacenamiento. Usa push(value) para añadir un elemento y pop() para eliminar el último. Llamar a pop en un array vacío provoca una reversión. Su longitud cambia a medida que se añaden o eliminan valores.

Declara esto en el ámbito del contrato:

uint256[] values;

Úsalo dentro de la función main proporcionada:

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

El array comienza vacío en esta prueba. Dos operaciones push crean dos elementos y pop elimina el segundo. El primero sigue siendo seis. Actualizar un array de almacenamiento cambia el estado del contrato, por lo que main no puede ser view.

push y pop cambian un array de almacenamiento dinámico al final.

challenge icon

Desafío

Fácil

Declara una matriz de almacenamiento dinámica de uint256 llamada values. Inserta a, b y c, elimina el último elemento y después imprime la longitud y el último valor restante.

Las pruebas pasan argumentos a main en este orden: uint256 a, uint256 b, uint256 c. Cada prueba comienza con un estado de contrato nuevo.

Usa console.log para la salida solicitada. Imprime solo los valores solicitados, uno por línea, sin etiquetas adicionales a menos que la tarea las especifique.

Pruébalo tú mismo

// 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  {
        // Escribe tu solución aquí.
    }
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Playground de Solidity