A voir également:
- Explication ligne de code en C
- Code ascii - Guide
- Partage de photos en ligne - Guide
- Site de vente en ligne particulier - Guide
- Mètre en ligne - Guide
- Code de déverrouillage oublié - Guide
6 réponses
kamine041131
Messages postés
8
Date d'inscription
vendredi 24 octobre 2008
Statut
Membre
Dernière intervention
26 octobre 2008
13
25 oct. 2008 à 12:48
25 oct. 2008 à 12:48
g ponse que c le delphi mais le c ????????
bitrate
Messages postés
441
Date d'inscription
vendredi 25 avril 2008
Statut
Membre
Dernière intervention
22 mars 2011
98
25 oct. 2008 à 13:16
25 oct. 2008 à 13:16
c'est printf("%s\n",line) pas line[0]
dubcek
Messages postés
18785
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
6 mai 2025
5 631
25 oct. 2008 à 14:16
25 oct. 2008 à 14:16
hello
ça c'est un tableau de 255 pointeurs de type char : char * line[255];
ca c'est un tableau de 255 élements de type char, un string : char line[255];
...
ça c'est un tableau de 255 pointeurs de type char : char * line[255];
ca c'est un tableau de 255 élements de type char, un string : char line[255];
...
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 845
25 oct. 2008 à 14:26
25 oct. 2008 à 14:26
Salut,
ça c'est un tableau de 255 pointeurs de type char : char * line[255];
Non, c'est un pointeur sur un tableau de 255 éléments. L'équivalent est char *(line[255])
Cdlt
ça c'est un tableau de 255 pointeurs de type char : char * line[255];
Non, c'est un pointeur sur un tableau de 255 éléments. L'équivalent est char *(line[255])
Cdlt
dubcek
Messages postés
18785
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
6 mai 2025
5 631
>
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
25 oct. 2008 à 14:36
25 oct. 2008 à 14:36
pas d'accord, char line[255]; line est un pointeur line[0] == * line
ca c'est un tableau de pointeurs sur des strings:
char* line[5] = {"AAAA","BBBB","CCCC","DDDD","EEEE"};
ca c'est un tableau de pointeurs sur des strings:
char* line[5] = {"AAAA","BBBB","CCCC","DDDD","EEEE"};
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 845
>
dubcek
Messages postés
18785
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
6 mai 2025
25 oct. 2008 à 14:54
25 oct. 2008 à 14:54
Pas d'accord non plus.
char* line[5] est équivalent à char * (line[5]) et non à char (*line)[5]
char* line[5] est équivalent à char * (line[5]) et non à char (*line)[5]
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 845
25 oct. 2008 à 14:28
25 oct. 2008 à 14:28
while (fgets(line, sizeof line, fp), !feof(fp))
Il doit y avoir une erreur dans ta ligne.
Il doit y avoir une erreur dans ta ligne.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Salut,
ça c'est un tableau de 255 pointeurs de type char : char * line[255];
Non, c'est un pointeur sur un tableau de 255 éléments. L'équivalent est char *(line[255])
Cdlt
Non !
#include <stdio.h>
main()
{
char line[255];
char *ptrs[255];
printf("sizeof(line) %d\n",sizeof(line));
printf("sizeof(ptrs) %d\n",sizeof(ptrs));
}
donne :
sizeof(line) 255
sizeof(ptrs) 1020
Jusqu'à nouvel ordre char *ptrs[255]; réserve 255 pointeurs, à l'analogue de (char*)ptrs[255];
Manu
Salut,
ça c'est un tableau de 255 pointeurs de type char : char * line[255];
Non, c'est un pointeur sur un tableau de 255 éléments. L'équivalent est char *(line[255])
Cdlt
Non !
#include <stdio.h>
main()
{
char line[255];
char *ptrs[255];
printf("sizeof(line) %d\n",sizeof(line));
printf("sizeof(ptrs) %d\n",sizeof(ptrs));
}
donne :
sizeof(line) 255
sizeof(ptrs) 1020
Jusqu'à nouvel ordre char *ptrs[255]; réserve 255 pointeurs, à l'analogue de (char*)ptrs[255];
Manu
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 845
25 oct. 2008 à 15:00
25 oct. 2008 à 15:00
Non.
T'as qu'à afficher le sizeof des deux dans ton programme. Et tu verras que c'est la même taille.
Par exemple :
Donc, char* ptrs[255] est analogue à char *(ptrs[255]) et non à char (*ptrs)[255]
T'as qu'à afficher le sizeof des deux dans ton programme. Et tu verras que c'est la même taille.
Par exemple :
#include <stdio.h> int main(void){ char *ptrs1[255]; char *(ptrs2[255]); char (*ptrs3)[255]; printf("sizeof(ptrs1) %d\n",sizeof(ptrs1)); printf("sizeof(ptrs2) %d\n",sizeof(ptrs2)); printf("sizeof(ptrs3) %d\n",sizeof(ptrs3)); return 0; } Execution : sizeof(ptrs1) 1020 sizeof(ptrs2) 1020 sizeof(ptrs3) 4
Donc, char* ptrs[255] est analogue à char *(ptrs[255]) et non à char (*ptrs)[255]