C fonction strlen

Résolu
Laorra Messages postés 159 Date d'inscription   Statut Membre Dernière intervention   -  
Laorra Messages postés 159 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Voilà un mini programme tout simple... que je ne parviens pas à faire marcher hum

mon printf tout à la fin me renvoi de fausse valeurs (du genre 655452).
Est ce que quelqu'un vois le problême??
Merci d'avance :)

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void main(void)
{
char lib[30];
int nb;

puts("saisir");
gets(lib);
puts(lib);
printf ("%d",strlen(lib));
nb=(strlen(lib)-2);
printf("nombre de lettre -2 %d",&nb);

system("PAUSE");

}
Configuration: Windows XP
Firefox 2.0.0.13

2 réponses

  1. pavarotti_39 Messages postés 364 Statut Membre 62
     
    Faites un printf de la chaine pour savoir si il y a le \0 à la fin.
    0
  2. amigo
     
    bonjour

    il ne faut mettre & avant nb

    printf("nombre de lettre -2 %d", nb);

    Salut
    0
    1. Laorra Messages postés 159 Date d'inscription   Statut Membre Dernière intervention   108
       
      merci beacoup à vous deux, cela venait en effet de '&'.
      bonne journée!
      0