Comparaison des pointeurs
MINA
-
kilian Messages postés 8854 Statut Modérateur -
kilian Messages postés 8854 Statut Modérateur -
Bonjour,
se programme l'orsque je cmpile il commence à s'executer mais l'orsque j'entre les pointeur il bloc
voici le code
#include<stdio.h>
#include<string.h>
int main()
{
int *p1,*p2;
char **c1,**c2;
/*Saisie des pointeurs*/
printf("donner les pointeurs sur les entiers\n");
scanf("%d ,%d",p1,p2);
printf("donner deux pointeurs sur deux chaines de caractéres");
scanf("%s %s",c1,c2);
if(*p1==*p2)
printf("ils sont égaux");
else
printf("ils sont differents");
if(strcmp(*c1,*c2)==0)
printf("les chaines sont égaux");
else
printf("les chaines sont differentes");
return 0;
}
Merci.
se programme l'orsque je cmpile il commence à s'executer mais l'orsque j'entre les pointeur il bloc
voici le code
#include<stdio.h>
#include<string.h>
int main()
{
int *p1,*p2;
char **c1,**c2;
/*Saisie des pointeurs*/
printf("donner les pointeurs sur les entiers\n");
scanf("%d ,%d",p1,p2);
printf("donner deux pointeurs sur deux chaines de caractéres");
scanf("%s %s",c1,c2);
if(*p1==*p2)
printf("ils sont égaux");
else
printf("ils sont differents");
if(strcmp(*c1,*c2)==0)
printf("les chaines sont égaux");
else
printf("les chaines sont differentes");
return 0;
}
Merci.
A voir également:
- Comparaison des pointeurs
- Comparaison million milliard - Accueil - Technologies
- Logiciel comparaison photo gratuit - Télécharger - Photo & Graphisme
- Comparaison samsung a15 et a16 - Accueil - Téléphones
- Comparaison prix amazon - Accueil - Commerce
- Prix Amazon : comment suivre les évolutions de tarifs - Guide
2 réponses
Salut,
si tu n'alloues pas d'espace mémoire, tu auras toujours un seg fault...
int *p1=(int*)malloc(sizeof(int));
int *p2=(int*)malloc(sizeof(int));
......
@+
si tu n'alloues pas d'espace mémoire, tu auras toujours un seg fault...
int *p1=(int*)malloc(sizeof(int));
int *p2=(int*)malloc(sizeof(int));
......
@+
En encore, tu peux utiliser l'adresse de variables locales:
#include<stdio.h>
#include<string.h>
int main()
{
int i1,i2;
char c1[30], c2[30];
/*Saisie des pointeurs*/
printf("donner les pointeurs sur les entiers\n");
scanf("%d ,%d",&p1,&p2);
printf("donner deux pointeurs sur deux chaines de caractéres");
scanf("%s %s",&c1, &c2);
if(i1==i2)
printf("ils sont égaux");
else
printf("ils sont differents");
if(!strcmp(&c1, &c2))
printf("les chaines sont égales");
else
printf("les chaines sont differentes");
return 0;
}