Menu
Coddy logo textTech

Arrays de memoria dinámica

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

Usa new uint256[](length) para asignar un array en memoria con una longitud elegida en tiempo de ejecución. Sus elementos comienzan en cero. Aunque el tipo usa corchetes vacíos, el array en memoria asignado no se puede redimensionar con push o pop.

Las instrucciones de este fragmento se ejecutan dentro de la función main proporcionada.

uint256[] memory values = new uint256[](3);
values[1] = 19;
console.log(values.length);
console.log(values[0]);

El array tiene tres posiciones y solo se asignó la posición central. Su primer elemento permanece en cero. La propiedad de longitud indica cuántos elementos existen, no el valor del último elemento.

Un array de memoria uint256 recién asignado comienza con elementos cuyo valor es cero.

challenge icon

Desafío

Fácil

Asigna un array de memoria de longitud n, establece su último elemento en marker y, después, imprime su longitud y su último elemento. n está entre 1 y 8.

Las pruebas pasan argumentos a main en este orden: uint256 n, uint256 marker. Cada prueba comienza con un estado del contrato nuevo.

Usa console.log para la salida solicitada. Imprime únicamente 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 n, uint256 marker) external view {
        // 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