Aller au contenu principal
U/
I/O
c

Afficher argv[1] sur stdout

Écrire un programme C qui imprime le premier argument de la ligne de commande sur stdout, ou signale une erreur sur stderr si aucun argument n'est fourni.

15 minPublié le 20 mai 2026Proposé par Anonyme

Défi

// Lisez attentivement, codez sur votre machine

Énoncé

Le programme reçoit des arguments via argc et argv. Si argc >= 2, il imprime argv[1] suivi d'une nouvelle ligne sur stdout et quitte avec le code 0. Si aucun argument n'est fourni (argc < 2), il affiche le message "Erreur : argument manquant" sur stderr et quitte avec le code 1.

Aucune bibliothèque externe n'est nécessaire, uniquement <stdio.h> et <stdlib.h>.

Contraintes

  • Compilé avec gcc -Wall -Wextra -std=c99 -o prog prog.c.
  • argv[1] peut contenir des espaces si l'appelant le quote ("hello world").
  • Le message d'erreur s'écrit sur stderr, pas sur stdout.
  • Exit code 0 en cas de succès, 1 en cas d'absence d'argument.

Exemple

Invocation avec argument :

$ ./prog Bonjour
Bonjour

Invocation sans argument (sortie sur stderr, code de retour 1) :

$ ./prog
Erreur : argument manquant
$ echo $?
1
Espace solution

Proposer une solution

Connectez-vous ou créez un compte pour envoyer votre code (aucune exécution côté serveur — on stocke juste le texte pour la communauté).

// À garder en tête
  • D'abord, faire marcher

    On ne cherche pas à optimiser : d'abord, on fait marcher le truc. Optimiser vient ensuite — et ça aussi, ça s'apprend. (Si un défi porte sur l'optimisation, son énoncé le précise.)

  • Pas de mauvaise réponse

    Il n'y a pas de mauvaise réponse à un défi. Le but, c'est de le faire. Ce qui compte, c'est de s'entraîner.

  • Trop dur ? Au suivant

    Un défi te résiste ? N'hésite pas à en prendre un autre. Ils seront encore là demain.