Comment apprendre la programmation C avec ce projet pour débutant
Apprendre à programmer est une expérience cumulative. En plus d’apprendre la syntaxe du langage de votre choix, vous devez également apprendre les principes généraux utilisés par tous les langages de programmation.
Comprendre et apprendre la programmation en C peut être intimidant, mais il y a quelques concepts de base qu’il vaut la peine de connaître avant de commencer. Un projet simple est un excellent moyen d’apprendre les bases de C.
Alors, par où commencer ? En disant bonjour !
1. Bonjour, monde !
La première partie de presque tous les cours de codage est Bonjour le monde programme. L’examiner en détail met en évidence certaines des différences entre le C et les autres langages. Tout d’abord, ouvrez un éditeur de texte ou un IDE de votre choix et saisissez le code suivant :
#inclure
/* Ceci est un script Hello World en langage C */
int principal (vide)
{
printf(« Bonjour, monde !
« );
renvoie 0 ;
}
Ce code court est imprimé sur la console avant de terminer le programme.Enregistrez-le dans un endroit facile à mémoriser Bonjour cVous devez maintenant compiler et construire votre fichier.
le faire courir
En règle générale, vous n’avez pas besoin d’installer de logiciel supplémentaire sur votre ordinateur pour exécuter des scripts C. Ouvrez une fenêtre de terminal (ou une invite de commande si vous utilisez Windows) et accédez au répertoire dans lequel vous avez enregistré le script.
La manière dont les fichiers sont compilés et exécutés varie selon le système :
- Utilisateurs Windows : Rendez votre fichier exécutable en tapant cl bonjour.c et appuyez sur entrée.Cela créera hello.exe dans le même dossier, vous pouvez l’exécuter en tapant Bonjour.
- Utilisateurs Linux et macOS : taper gcc -o bonjour bonjour.c et appuyez sur Entrée pour le rendre exécutable et exécutez-le en tapant . /Bonjour.
Faire une vidéo du jour
Quelle que soit la méthode que vous utilisez, l’exécution du script devrait vous montrer :
Si cela ne fonctionne pas sous Windows, assurez-vous d’exécuter l’invite de commande en mode administrateur. Pour macOS, vous devrez peut-être installer Xcode depuis l’App Store et suivre ces étapes sur StackOverflow.
Maintenant, parcourons le programme ligne par ligne, voyons comment cela fonctionne et améliorons-le !
Dans les coulisses : Comprendre le langage C
préprocesseur
Le script que vous venez de créer commence par inclure une bibliothèque.
#inclure
La première ligne du script s’appelle préprocesseurCeci est exécuté avant que le reste du script ne soit compilé.Dans ce cas, il indique au script d’utiliser sortie standard bibliothèque. Il existe un grand nombre de préprocesseurs disponibles pour différentes tâches.
Stdio.h est chargé de recueillir les commentaires des utilisateurs du programme et de leur renvoyer les informations.
/* Ceci est un script Hello World en langage C */
La ligne suivante est un commentaire. La barre oblique et l’astérisque indiquent au compilateur d’ignorer tout ce qui se trouve entre elle et l’astérisque et la barre oblique de fermeture. Bien que cela puisse sembler inutile, être capable d’expliquer clairement à vous-même et aux autres ce que fait votre code est une habitude essentielle à développer.
La fonction principale
int principal (vide)
Chaque programme C doit avoir un principale Caractéristiques. Main est une fonction qui renvoie un entier, représenté par entierLes parenthèses après .main sont ses arguments, bien que dans ce cas, il ne prend aucun argument, c’est ce que vous utilisez Vide Mots clés.
Vous écrivez le code à exécuter entre deux accolades.
{
printf(« Bonjour, monde !
« );
renvoie 0 ;
}
À l’intérieur de la fonction, vous appelez fonction d’impression() Caractéristiques.aimer principale(), printf est une fonction.La différence est que printf est sortie standard Les bibliothèques que vous avez incluses au début.
Printf imprime tout ce qui se trouve à l’intérieur des parenthèses, entre les guillemets, sur la console.cette n est une séquence d’échappement appelée nouvelle ligne qui indique au compilateur de passer à la ligne suivante dans la console avant de continuer.
Notez que ces lignes commencent par point-virgule, qui est utilisé par le compilateur pour séparer une tâche de la suivante. Gardez un œil sur ces points-virgules – les manquer est la principale raison pour laquelle les choses ne vont pas bien !
Enfin, la fonction renvoie le nombre 0 et le programme se termine.cette principale() La fonction doit toujours retourner un entier, et retour = 0 ; Signale à l’ordinateur que le processus a réussi.
Comprendre chaque étape de ce script est un bon début pour apprendre la syntaxe C et le fonctionnement du langage.
2. Créez votre propre fonction C
Vous pouvez créer vos propres fonctions personnalisées en C. Au lieu d’imprimer Hello World dans la fonction principale, créez une nouvelle fonction pour le faire pour vous.
annuler print_for_me()
{
printf(« Bonjour, monde !
« );
}
Décomposons-le.
Vide est un mot clé indiquant que la fonction suivante ne renverra rien.
print_for_me() est le nom de la fonction, et les parenthèses vides signifient qu’elle n’a besoin d’aucun argument pour fonctionner. Les arguments sont toutes les informations transmises à une fonction pour la faire fonctionner – plus tard, vous ajouterez vos propres arguments pour modifier la sortie ! Remarques: Ceci est différent de la fonction main() ci-dessus qui utilise void. La fonction ne peut pas accepter d’arguments, alors que cette fonction peut (mais dans ce cas, n’est pas obligée).
bloc de code Vous devriez être familier – c’est juste l’instruction print dans la fonction main d’origine.
Vous pouvez maintenant appeler cette fonction à partir de la fonction principale.
int principal (vide)
{
print_for_me();
print_for_me();
renvoie 0 ;
}
Vous pouvez voir les avantages d’utiliser votre propre fonction ici.au lieu de taper printf(« Bonjour, tout le monde !n ») Vous pouvez appeler la fonction deux fois à chaque fois.
Cela peut ne pas sembler beaucoup maintenant, mais si votre fonction print_for_me contient de nombreuses lignes de code, pouvoir l’appeler si facilement peut vous faire gagner beaucoup de temps !
C’est l’idée de base de la programmation que vous rencontrerez tout au long de votre formation. Écrivez vos propres fonctions une seule fois au lieu d’écrire les mêmes gros morceaux de code encore et encore.
3. Utiliser des prototypes de fonctions en C
Les prototypes sont l’une des principales différences entre le débutant C et les autres langages. En bref, un prototype est comme un aperçu d’une fonction qui sera définie plus tard. Si vous écrivez la fonction print_for_me() après la fonction main, vous pouvez recevoir un avertissement au moment de la compilation :
Le message d’avertissement vous indique que le compilateur a rencontré la fonction print_for_me avant qu’elle ne soit déclarée, il ne peut donc pas être sûr qu’elle fonctionnera correctement lorsque le programme s’exécutera.
Le code fonctionne toujours, mais l’avertissement peut être entièrement évité en utilisant des prototypes.
#inclure
annuler print_for_me();
int principal (vide)
{
print_for_me();
print_for_me();
renvoie 0 ;
}
annuler print_for_me()
{
printf(« Bonjour, monde !
« );
}
En regardant le programme complet, vous pouvez voir que le prototype de print_for_me() existe au début du programme, mais ne contient rien. Les fonctions prototypes montrent au compilateur à quoi ressemble la fonction et si elle prend des arguments.
Cela signifie que lorsque vous l’appelez dans la fonction main, le compilateur sait s’il a été appelé correctement et peut générer des avertissements ou des erreurs si nécessaire. Cela peut sembler étrange maintenant, mais les connaître maintenant aidera à l’avenir.
Ce programme fonctionnera toujours sans prototypes, mais ils sont une bonne pratique à utiliser. La sortie a toujours la même apparence maintenant, changeons-la pour la rendre plus personnelle !
4. Passer des paramètres aux fonctions C
modifier le scénario
Pour cette dernière étape, vous demanderez à l’utilisateur son nom et enregistrerez sa saisie. Ensuite, vous l’utiliserez dans la fonction que vous avez créée précédemment. En C, les mots ne sont pas appelés chaînes comme dans les autres langages de programmation.
Au lieu de cela, ce sont des tableaux de caractères uniques.La notation d’un tableau est [] le mot clé est personnageMettez d’abord à jour la fonction prototype au début du script :
#inclure
void print_for_me(char nom[]);
Maintenant, le compilateur saura que la fonction qui suit le script accepte un tableau de caractères appelé NomPour l’instant, ce rôle n’existe pas. Mettez à jour votre fonction principale pour la créer et utilisez-la pour stocker les entrées utilisateur :
int principal (vide)
{
le nom du personnage[20];
printf(« Veuillez entrer votre nom : « );
scanf(« %s », nom);
print_for_me(nom);
print_for_me(« Tout le monde! »);
renvoie 0 ;
}
La première ligne de main crée un tableau de caractères de 20 espaces possibles appelé name. Ensuite, l’utilisateur est invité à entrer son nom à l’aide de printf.La ligne suivante utilise une nouvelle fonction appelée balayage Il prend le mot suivant entré par l’utilisateur.
cette « %s » indiquez à la fonction qu’elle doit stocker les données sous forme de chaîne et appelez-la Nom.
Modifier la fonction
Désormais, lorsque vous appelez print_for_me, vous pouvez inclure Nom entre parenthèses. Sur la ligne suivante, vous verrez que vous pouvez également passer d’autres caractères, tant qu’ils sont entre guillemets. Les deux fois, tout ce qui est entre parenthèses est passé à la fonction print_for_me.
Modifiez-le maintenant pour utiliser les nouvelles informations que vous avez fournies :
void print_for_me(char nom[])
{
printf(« Bonjour, »);
mettre (nom);
}
Ici, vous pouvez voir que les crochets ont été mis à jour, tout comme le prototype au début du script. À l’intérieur, vous utilisez toujours printf pour imprimer bonjour.Voici une nouvelle fonctionnalité option de venteCeci est une version plus avancée de printf.
Tout ce qui est entre parenthèses est imprimé sur la console, et une nouvelle ligne ( n que vous utilisiez auparavant) seront ajoutés automatiquement.
Enregistrez et compilez le code de la même manière qu’avant — Notez que vous pouvez nommer le programme différemment si vous ne voulez pas écraser le programme précédent.j’ai nommé le mien bonjour 2:
Comme vous pouvez le voir, le programme prend l’entrée et l’utilise dans la fonction, puis envoie le message d’accueil prédéfini « Tout le monde! ». Encore une fois, deux sorties séparées pour la même fonction.
Bases de la programmation en C
Le programme est simple, mais certains concepts ne le sont pas. Le code C de niveau supérieur doit être très bien écrit pour éviter les plantages. C’est pourquoi beaucoup le considèrent comme un excellent langage à apprendre car il inculque de bonnes habitudes aux nouveaux programmeurs.
D’autres pensent que l’apprentissage du C++ est une meilleure idée car il s’appuie sur le C tout en conservant son contrôle système inférieur. (Il y a aussi Rust à considérer – c’est un langage de programmation passionnant qui est syntaxiquement similaire à C++.)
Une chose est sûre : les langages comme Python sont plus conviviaux pour les débutants. Pour un langage ancien, le C est encore partout, mais Python pourrait être le langage du futur !
…