1.“ * ”的几种用途
- 乘法运算符
- 定义新类型——char* ;
- 取值运算符——* + 指针类型的变量(也可以是指针类型运算结果)。作用是:把*后面的值当成地址,然后把里面的值取出来。
- 如: int* a=(int*)1; printf("%x ",*a); 的作用是取出指针类型a中的值(1),然后把这个值(1)当作地址取出其中的值。
3.探测 *指针类型 的类型
如三个指针类型:
int*** a; int***** b; int* d; int x=*(a); // 这里的*a就被编译器当成 int** int y=*(b); // int**** int z=*(d); // int
总结:*加指针类型的类型是指针类型减去一个*
4.取值运算符举例
int x=1; int* p=&x; // 把x的地址存到p中 printf ("%x %x ",p,*(p)); // p:x的地址 *(p):x这个地址中存的值 *(p)=2; // 修改p中存的地址中的值,即修改x的值为2