Commentaires sur mon code [Résolu]

Signaler
Messages postés
4
Date d'inscription
dimanche 7 juin 2020
Statut
Membre
Dernière intervention
12 juin 2020
-
Messages postés
14741
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
13 septembre 2020
-
Bonjour,
Je n'ai aucun problème mais j'aimerais avoir un avis sur la façon dont je commente mon code.
#include <stdio.h>
#include <stdlib.h>

int main(void){

 int lettre;

 // Entrée d'une lettre entre a et y
 printf("Entrez une lettre entre a et y : ");
 scanf("%c", &lettre);

 // Vérification du contenu de la variable
 if (lettre >= 4194401 && lettre < 4194426){

  // La lettre saisie deviendra celle qui la suit dans l'alphabet
  lettre++;
  printf("%c\n", lettre);
 }
 // Indique que le caractère saisi n'est pas acceptable et le programme s'arrête
 else{

  printf("Une erreur est survenue\n");

  return -1;
 }

 system("pause");

 return 0;
}

4 réponses

Messages postés
14741
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
13 septembre 2020
431
Bonjour

Tu as essayé d’utiliser les balises de code, mais pas tout à fait correctement.
Voici un petit tuto, pour tes prochains posts https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Concernant tes commentaires, il y a 2 publics visés
  • toi-même, si tu dois maintenir le code dans 6 mois, 1 an, 10 ans etc... Les commentaires doivent te permettre de te replonger « instantanément » dans le bain
  • tes collègues actuels ou futurs, qui pourraient eux aussi maintenir ce code. Les commentaires doivent leur permettre de s’imprégner rapidement de ta façon de coder.


Dans le cas actuel, cela me parait très bien.
Messages postés
321
Date d'inscription
samedi 18 décembre 2004
Statut
Non membre
Dernière intervention
2 septembre 2020
2
Bonjour 33cl_dev,

L'écriture : lettre++ indique un programme en C++ et non en C.
Et le format %c concerne une variable char et non une variable int.
En programmation C++ on peut donc écrire :
#include <iostream>

int main(void){

    char lettre;

    // Entrée d'une lettre entre a et y
    std::cout << "Entrez une lettre entre a et y : ";
    std::cin >> lettre;
    std::cout << std::endl << "La lettre lue est : " << lettre << std::endl;

    // Vérification du contenu de la variable lettre
    if (lettre >= 'a' && lettre <= 'y'){

        // La lettre saisie deviendra celle qui la suit dans l'alphabet
        lettre++;
        std::cout << "La lettre suivante : " << lettre << std::endl;
    }
    // Indique que le caractère saisi pour la variable lettre n'est pas acceptable
    else{

        std::cout << "Une erreur est survenue" << std::endl;
        return -1;
    }

    return 0;
}

Messages postés
3817
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
2 septembre 2020
112
Bonjour !

J'ai écris un article il y a quelques temps, qui devrait t'intéresser:
http://0217021.free.fr/portfolio/axel.berardino/articles/ecrire-de-bons-commentaires/

En gros, tu paraphrases ton code, donc les commentaires que tu as fait ne sont pas efficaces. De plus, un bon code est "self-documented", c'est-à-dire suffisamment clair pour être quasi documenté naturellement. Généralement on commente plus les fonctions, qui sont elles mêmes plus clairs.

Exemple:
#include <stdio.h>
#include <stdlib.h>

/*!
** nextChar returns the next char in the ascii table.
**
** @param c the char
** @return the next char
*/
char nextChar(char c) {
   return c + 1;
}

/*!
** isValid checks if the char is valid, ie, is in a valid range.
**
** @param c the char to check
** @return if is in range
*/
int isValid(c char) {
  return c >= 'a' && c <= 'y'
}

int main(void){
 char lettre;

 printf("Entrez une lettre entre a et y : ");
 scanf("%c", &lettre);

 if (isValid(lettre)){
    printf("%c -> %c\n", lettre, nextChar(lettre));
 } else{
    printf("Une erreur est survenue\n");
    return -1;
 }

 system("pause");

 return 0;
}
Messages postés
14741
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
13 septembre 2020
431
Salut, très instructif.
« Quelques temps » est une notion relative ;)