I cannot use salesman[a].ID = nextid(); anymore. So, how can I past last variable in nextid() to salesman[a].ID?Code:typedef struct{ int ID; char name[50]; double hor_total; }group; group salesman[SIZE]; int nextid(); int nextid(int last, int resetId) { if ( resetId == 0) { static int last; return ++last; } else { static int last = 0; return ++last; } } int main() { FILE *readId; int a, b, c = 0, last; double ver_total = 0, max = 0; int id, lastId, resetId = 0; if ( (readId = fopen("nextid.txt","r")) == NULL) printf("Cannot open nextid.txt file"); else { fscanf(readId,"%d",&lastId); nextid(lastId, resetId); } for(a=0; a<SIZE; a++) { salesman[a].ID = nextid(); salesman[a].hor_total = 0; } }