Salut à tous,

Voila j'aimerais en savoir plus sur l'erreur de segmentation avec gcc sur ce code.

Voici le code (il n'est pas de moi mais d'un livre) , son but est de vous faire rentré 10 valeurs numériques entières (ou moins taper 0 pour finir) puis d'afficher la plus grande.

Je suis sous linux au cas ou ça marcherai sur un autre OS

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <stdio.h>
#include <stdlib.h>
 
#define MAX 10
 
int tab[MAX+1], count;
 
int largest(int x[]);
 
 
int main()
{	
	for(count=0; count<MAX; count++)
	{
		printf("entrer une valeur entière: ");
		scanf("%d", &tab[count]);
 
		if(tab[count]==0)
		count=MAX;
	}
 
	tab[MAX]=0;
 
	printf("\n\nla valeur la plus grande est: %d\n", largest(tab) );
 
	exit(EXIT_SUCCESS);
}
 
 
int largest(int x[])
{
	int count,  biggest=x[0];
 
	for(count=1; count != 0; count++)
	{
		if(x[count]>biggest)
		biggest = x[count];
	}
 
	return biggest;
}