https://i.stack.imgur.com/kU6lD.pngpourquoi dans ce programme l'erreur d'exécution dépend de la valeur de l'entrée?
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i,n,*a=(int*)malloc(n*sizeof(int));
scanf("%d",&n);
for(i=0;i<n;++i)
scanf("%d",(a+i));
for(i=0;i<n;++i)
printf("%d",*(a+i));
free(a);
return 0;
}
l'exécution du programme ci-dessus smootly jusqu'à l'entrée (c.-à-n) est inférieur ou égal à l'entrée 6.If I n supérieur à 6 alors il montre error.WHY d'exécution? Ici Erreur d'exécution dépend la valeur de l'entrée ??)
Vous utilisez la valeur d'une variable non initialisée 'n' pour allouer de la mémoire. que 'malloc()' doit être placé ** après ** 'scanf()'. – m0h4mm4d
Et je vous suggère de mettre le code dans votre question, au lieu de le télécharger comme une image. Il y a une balise de code dans SO qui fonctionne parfaitement pour le code c. – m0h4mm4d