Compréhension des pointeurs
Bonjour,
Je suis actuellement étudiant, et j'ai eu un cours sur les pointeurs. A la suite de ce cours j'ai eu droit à des exercices, dont un me demandant de retourner la valeur 1 si un caractère d'une chaine est en miniscule ou s'il n'y a pas de caractère et 0 sinon.
Jusque là pas de souci, le problème, c'est que je n'arrive pas à tester ma fonction que voici :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| int my_str_islower(*str)
{
int inc;
inc = 0;
while (*str[inc] != '\0')
{
if ((*str > "97") && (*str < "123") || (*str == ""))
return (1);
else
return (0);
}
}
int main()
{
char *str;
str[0] = '5';
str[1] = '55';
str[2] = '120';
str[3] = '\0';
my_str_islower(*str);
return(0);
} |
Et le résultat à chaque fois que je compile est segmentation fault. Je sais que cela viens des valeurs que je donne à mon pointeur, mais je ne comprends pas pourquoi... Quelqu'un pourrait-il m'expliquer (et m'aider par la même occasion)?