The above error message means that the programmer applied pointer deference to integer i.e. got the value from a memory location where the pointer points. Asteric (*) allows the programmer to access data from main memory when dereferencing. The best possible way to solve the error is by shortening your code to the line where the error emanated to a minimum displayname. This will allow identifying the variables involved in the program function.
Another possible explanation for the above error may be attributed to applying owns operators pointer to a variable of integer type and the compiler interprets the pointer as indirect operation.
sample of a syntax part which outputs error;
long long card = get-long_long ();
long long *findlength = *card;
The programmer here applied own operator “card” as a pointer to integer which made the integer to be declared long. The error occurred because the integer was not pointed to main memory. The card variable should point ot memory address so that findlength can be output.
Heres a simple way to solve the issue;
Long long *findlength=& card;
The elimination of *Asteric sign before card and its replacement points the output to the variables.
h = initializeHeap();
Heap *p = *h;
Here programmer have to change
Heap *p = *h;
Heap *p = &h;
h is a Heap structure object, use & operator to get a pointer to the structure object.
Hope this helps.