|
|
|
|
Salut!
je dois calculer la longueur d'une chaine de caractere
est ce ke ceci est bon :
#include <stdio.h>
#include <conio.h>
char ptc[6]= "hello";
int i;
void main(void)
{
i = 0;
while(ptc[i] != '\0')
{
i++;
}
return i;
printf("votre chaine de caractere a une longueur de %d caracteres",i);
}
merci pour votre aide!
Répondre à Joshua
|
Salut,
|
Bonjour,
char *car; car = (char*)malloc(27*sizeof(char)); Je serai d'avis de directement faire ceci : #define BUF_MAX_SIZE 27
void
main()
{
char car[BUF_MAX_SIZE];
/* Mise à 0 */
memset(&car, 0, BUF_MAX_SIZE);
printf("Entrez un mot: \n");
scanf("%s",car);
printf("le nombre de caracteres est : %d",strlen(car));
getch();
}
memset permet de s'assurer que tout le tableau contient des 0, ce qui permet d'être certain que notre chaine de caractère copie grâce à scanf se termine par un '\0' Après, je pense que scanf() termine la chaine de caractère copiée par un '\0' donc le memset n'est pas obligatoire... a priori. Maintenant, reproduire strlen n'est pas des plus compliqués, à partir du moment où l'on sait faire des itérations sur un tableau et que l'on sait aussi par quoi se termine une chaine de caractère. Bon courage, c-moi |
Salut. Pour faire rapide :
|