I\'m using this code to move pointer by 1 byte now, but I\'m feeling something unclear..
int* a = (int*)malloc(sizeof(int)); void* b = ((char*)a)+1;
((char*)a)++
This is one of those evil Microsoft extensions. A pointer casting expression is an rvalue, but according to the C++ language rules, the increment operator only works on lvalues. g++ refuses to compile this.