#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(void){
char *p = NULL;
char buf[] = "abc"; //buf指向常量区“abc”,拷贝到栈区buf,编译器检测到是数组,地址0x11,//注意这里没有指向关系
printf("p1=%d\n", p);
//改变指针变量的值
p = buf; //p指向buf地址,指针指向谁,就把谁的地址赋值给指针,这里p指向0x11,a的首地址
printf("p2=%d\n", p);
p = p + 1; //改变指针的指向,原来指针指针指向a的0x11, +1指向b
printf("p2=%d\n", p);
printf("buf=%s\n", p);
printf("\n");
system("pause");
return 0;
}
// %s 指向内存里面的内容
// %d 指向变量里面的值
*p='a' 不会改变指针变量的值,只会改变所指的内存快的值
p与*p
p是变量,变量可以是地址,可以是数字
加上*p指向指针所指向的内存
//注意