J'essaie de vérifier si l'index d'un tableau a une valeur ou non.comparaison entre pointer et entier ('int' et 'void *') - C
void * cols;
...
...
if (((int*)cols)[1]==NULL){
counter++;
columns++;
}
else
{
value=((int*)cols)[1];
fprintf(f, "Validation result from process id: %u. :column %d is invalid\n", (unsigned int)thread_10,value);
}
cela me donne l'avertissement "comparaison entre pointeur et entier ('int' et 'void *')". Qu'est-ce que je fais mal ? comment puis-je vérifier si l'index est nul ou non? Aussi je ne peux pas vérifier 0 parce que 0 est une valeur valide dans mon cas signifiant si un index contient la valeur 0 qui signifie son valide.
pointeurs ne peuvent être 'null'. '((int *) cols) [1]' est un 'int', pas un pointeur. Et il n'y a pas de "variable vide", donc vous ne pouvez pas vérifier si un tableau a une valeur assignée ou non. Vous, le programmeur, devez suivre cela. –