Array como Parâmetro
Parte da seção Fundamentals do Journey de Rust da Coddy — lição 56 de 75.
Em Rust, você pode aceitar arrays como parâmetros da seguinte forma:
Arrays de tamanho fixo:
fn process_array(arr: [i32; 5]) {}Isso permite que você passe apenas arrays com o comprimento 5 por causa do 5 em [i32; 5].
Referência de array usando o sinal &:
fn process_array(arr: &[i32]) {}Uma referência é como um ponteiro para os dados em vez dos próprios dados. Usar & cria uma referência. Isso permite passar um array de qualquer tamanho.
Use arrays de tamanho fixo ([i32; 5]) quando você precisar trabalhar apenas com arrays de um tamanho específico.
Use referências de array (&[i32]) quando você quiser mais flexibilidade - elas podem aceitar arrays de qualquer tamanho e são mais eficientes em termos de memória.
Por exemplo, veja como chamar uma função que aceita uma referência de array:
let numbers = [1, 2, 3, 4, 5];
process_array(&numbers);Folha de consulta
Arrays podem ser passados como parâmetros de função de duas maneiras:
Arrays de tamanho fixo:
fn process_array(arr: [i32; 5]) {}Aceita apenas arrays com exatamente 5 elementos.
Referências de array:
fn process_array(arr: &[i32]) {}Aceita arrays de qualquer tamanho. Mais flexível e eficiente em termos de memória.
Chamando com referência de array:
let numbers = [1, 2, 3, 4, 5];
process_array(&numbers);Experimente você mesmo
Esta lição não inclui um desafio de código.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentals
4Operadores Parte 1
Operadores AritméticosOperador de MóduloAtalhos AritméticosOperadores de ComparaçãoComparação de Strings7Entrada e Saída Básica
Exibindo no ConsoleLendo a Entrada do UsuárioRevisão - Até 120Revisão - Verdadeiro ou Falso5Operadores Parte 2
Operadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 33Variáveis Parte 2
Declaração de TipoConvenções de NomenclaturaInferência de TipoRecapitulação - Inicializar VariáveisConversão de Tipo9Laços
For sobre SériesLaço WhileBreakContinueLaços AninhadosRótulos de LoopLoop InfinitoRecapitulação - Entrada Dinâmica12Fundamentos de Arrays
Declarando ArraysArray como ParâmetroAcessando ElementosModificando ArraysRecapitulação - Pretty Print de Array