Bonjour, je souhaite lire une string de 20 charactère maximum (le retour à la ligne compte comme un charactère) et l'imprimer.
Mon problème viens de la reconnaissance de la taille de la string entrée. Mon code est le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
#include <string.h>
 
int main()
{
    char tab[20];
 
    printf("écrire une chaine de 20 charactères maxi (retour à la ligne compris)\n");
 
    if(scanf(" %19c", tab) == 1)   //scanf réussi
    {
        if (strlen() > 20)   /*pb ici, je voudrais tester si la string est trop longue ( mais je ne sais pas vraiment comment récupérer cette longueur), il fallait peut être le faire avant.*/
        {
            fprintf(stderr,"ERROR:\n");
            return 1;
        }
        printf("%s", tab);
        return 0;
    }
    else     //scanf raté
    {
        fprintf(stderr,"ERROR\n");
        return 1;
    }
}
Merci d'avance,

Jocelyn