Error: void value not ignored as it ought to be

di il
1 risposte

Error: void value not ignored as it ought to be

Ciao a tutti, il compilatore dice che dovrei non sto ignorando abbastanza un void. Ho provato a ignorarlo di più ma non succede niente . Posto il codice.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int watch();
void draw_snake(char *pg);
void drop_food(char *pf);

int main ()
{
	int c1, c2, temp;
	char grid[30][50];
	float counter=0;
	int (*p)(void);
	p = watch;
	for(;;){
	if((p())>=counter){
	system("tput clear");
	draw_snake(&grid);
	drop_food(&grid);
	for(c1=0; c1<30; c1++){
		for(c2=0; c2<50; c2++){
			if (c1==0 || c1 == 29 || c2 == 0 || c2 == 49){
			grid[c1][c2]='#';
			printf("%c", grid[c1][c2]);	}
			else if(grid[c1][c2] == 'O'){
			printf("%c", grid[c1][c2]);	}
			else{
			grid[c1][c2]=' ';
			printf("%c", grid[c1][c2]);	}
		}
	printf("\n");	}
	counter+=1;}
	else{;}	}

	

	
}
int watch(){
	int time = (clock() / CLOCKS_PER_SEC);
	return time;	}

void draw_snake(char *pg){

	static int c1=1, c2=1;
	int lenght=6, i;
	pg+=(c1*50+c2);
	for( i=0; i<lenght; i++, pg++){
		if(i== 0){
		*pg=' ';	} 
	else{
		*pg='O';	}
	} 
	c2+=1;}
void drop_food(char *pf){
//le linee incriminate
	int s=((srand(time(NULL)))%100)+1;
	int s2=((srand(time(NULL)))%100)+1;
//fine linee incriminate
	if (s>50)
	s%=10;	
	if (s2>50)
	s2%=10;	
	pf+=(s*50+s2);
	*pf='*';	}
Non mi era mai capitato. La funzione drop_food non sta ritornando niente perchè mi dice che ignoro il fatto che è una void ? Bo... illuminatemi.

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte