#include<stdio.h>
//笔记:我对指针的理解
int main() {
int a = 10;
int* b = &a;
printf("//a=%d \n", a);//10 int类型
printf("//b=%d \n", b);//地址值 指针
printf("//*b=%d \n", *b);//10
//int* *c = b;//不报错,但是错误的赋值方式。
int* * c = &b;
int* * y = *b;
printf("/-1-/*c=%d\n", *c);//地址值
printf("/-2-/**=%d\n", **c);//10
//类似int* b = &a; int* 才能指针存储地址值
int str[4] = {6,2,4,1};
//a = &str;//错误,a 不是指针,
b = &str;
printf("*b=%d\n",*b);//6
printf("*b+1=%d\n", *b+1);//7
printf("*(b+1)=%d\n", *(b+1));//2
printf("*b++=%d\n", *b++);//6
printf("b=%d\n",b);//地址值
printf("//*b=%d \n",*b);//2,因为前面进行了b++(后加加)
printf("//+//c=%d\n",c);//地址值
printf("/*c=%d\n",*c);//地址值
printf("**c=%d\n",**c);//2,位置不同,前面进行了b = &str;
**c = &str;
printf("**c-+-=%d \n", **c);//地址值
/**
int* *a=2;
char* *g='3';
*a = *g;//错误
*
char* str1 = "tdfsdfasf";
printf("%s",str1);//tdfsdfasf
// printf("%s",*str2);//报错,不要对这个字符串这样取引用
// printf("%s",&str2);//不报错但没结果,也不要对这个字符串这样取地址
*/
}
知识点理解:我对指针的理解
最新推荐文章于 2022-04-18 15:54:02 发布