请问大家
char* p="1"
p+1 位置的数据是否是字符\0呢?
是
void main()
{
int a[] = {1,2,3,4};
int* b = (int*)&a;
}
在上面的程序中定义一个int类型的指针(在这里要重点强调一下,这里是int类型的指针,对后面的内容的理解很重要),指针b的地址为0x0018ff38,指针b+1的地址为0x008ff3c,他们中间相隔了4byte,刚好是一个int类型的大小,而指针b又是一个int类型的指针,所以我们可以得出一个结论:
指针P+1 = 指针P + sizeof(指针的类型) * 1