frank10
26-10-2010, 17:57
Voglio controllare se in un array char esiste il carattere 0. Per questo uso la funzione strchr().
Se faccio così, funziona:
char s[8] = "11101111";
char *p;
p = strchr(s, '0');
if (p == NULL)
{
printf("nullo tutti 1111\n");
}
ma così non va:
char s[8];
for (i=1 ; i<9 ; i++)
{
s[i] = 1; //neppure con s[i] = '1';
if (i ==3) s[i] =0; // o s[i] = '0';
}
char *p;
p = strchr(s, '0');
if (p == NULL)
{
printf("nullo tutti 1111\n");
}
mi dà p = null anche se c'è uno 0 nella stringa.
Se faccio così, funziona:
char s[8] = "11101111";
char *p;
p = strchr(s, '0');
if (p == NULL)
{
printf("nullo tutti 1111\n");
}
ma così non va:
char s[8];
for (i=1 ; i<9 ; i++)
{
s[i] = 1; //neppure con s[i] = '1';
if (i ==3) s[i] =0; // o s[i] = '0';
}
char *p;
p = strchr(s, '0');
if (p == NULL)
{
printf("nullo tutti 1111\n");
}
mi dà p = null anche se c'è uno 0 nella stringa.