Menu
Coddy logo textTech

Paramètres et arguments

Fait partie de la section Fundamentals du Journey Rust de Coddy — leçon 50 sur 75.

Un argument dans une fonction est une valeur que vous passez à la fonction lorsque vous l'appelez. Pour ajouter des arguments à une fonction, nous les écrivons à l'intérieur des parenthèses () :

fn function_name(arg1: data_type, arg2: data_type, ...) {
	// code
}

Nous pouvons nommer les arguments comme nous le souhaitons et nous pouvons écrire autant d'arguments que nécessaire.

Pour appeler une fonction et lui passer des arguments, nous écrivons :

function_name(value1, value2, value3, ...);

Passer trop d'arguments à une fonction qui en attend moins fera échouer le programme

Exemple d'utilisation :

fn is_even(number: i32) {
	if number % 2 == 0 {
		println!("{} is even", number);
	} else {
		println!("{} is odd", number);
	}
}

for i in 15..34 {
	is_even(i);
}
for i in 153..219 {
	is_even(i);
}

Voici une fonction appelée is_even qui accepte un argument appelé number et affiche si le nombre est pair ou impair. Ensuite, nous appelons la fonction deux fois : une fois pour tous les nombres entre 15 et 34, une deuxième fois pour tous les nombres entre 153 et 219.

challenge icon

Défi

Facile

Écrivez un programme qui récupère deux nombres en entrée. Les nombres saisis sont les arguments de la fonction. 

Créez une fonction qui reçoit deux arguments, calcule leur produit et l'affiche, nommez la fonction comme vous le souhaitez.

Appelez la fonction avec les nombres saisis.

Remarque ! Dans votre code, écrivez la fonction avant ses instructions d'appel/exécution.

Aide-mémoire

Pour ajouter des arguments à une fonction, écrivez-les à l'intérieur des parenthèses avec leurs types de données :

fn function_name(arg1: data_type, arg2: data_type) {
    // code
}

Appelez une fonction en passant des valeurs comme arguments :

function_name(value1, value2);

Exemple avec un argument :

fn is_even(number: i32) {
    if number % 2 == 0 {
        println!("{} is even", number);
    } else {
        println!("{} is odd", number);
    }
}

is_even(42);

Passer trop d'arguments à une fonction entraînera l'échec du programme

Essayez vous-même

use std::io;

// Déclaration de fonction


fn main() {
    let mut input_a = String::new();
    let mut input_b = String::new();

    io::stdin().read_line(&mut input_a).unwrap();
    io::stdin().read_line(&mut input_b).unwrap();

    let a: i32 = input_a.trim().parse().unwrap();
    let b: i32 = input_b.trim().parse().unwrap();
    // Appeler la fonction avec a et b comme arguments
    
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fundamentals