2个回答
--
2022-12-05 广告
2022-12-05 广告
图形化编程简单理解为用积木块形式编程,scratch和python也是其中的一种,属于入门级编程,以其简单生动的画面获得无数学生的喜爱,深圳市创客火科技有限公司是一家做教育无人机的公司,旗下有编程无人机,积木无人机及室内外编队,每款飞机含有...
点击进入详情页
本回答由--提供
展开全部
int n = 10;
int *p = &n; //不管是C还是C++这句都是对的
int *p = n; //不管是C还是C++这句都是错的!!!类型不匹配
在不同的地方*表示的含意是有区别的。
当*出现在类型定义时(类型之后的地方),如int *p;那这是告诉编译器变量p的类型为int类型的指针(int*),所以你还可以这样写int* p;或int * p;都是可以的。
而直接出现在变量后(不是定义时),就表示解引用.
int *p;
p = &n;
是先定义p为一个int型的指针,然后让p等于(指向)整型n的地址
而int *p = &n; 变量p实际上是在定义的同时赋了初值,因此这里p前面的*是要和类型(也就是int)合起来看,表示p是一个int型的指针!此时,千万不要把*和p一起来看!
所以
int* p; //我有意把*写得和int靠拢一些:),强调int*是一种类型
p = &n;
和
int* p = &n;
是一回事
就好比:
int i;
i = n;
和
int i = n;
是一回事
而*p = *p + 6;中p前面的*就是解引用符了
不要把概念搞混了啊,呵呵!
int *p = &n; //不管是C还是C++这句都是对的
int *p = n; //不管是C还是C++这句都是错的!!!类型不匹配
在不同的地方*表示的含意是有区别的。
当*出现在类型定义时(类型之后的地方),如int *p;那这是告诉编译器变量p的类型为int类型的指针(int*),所以你还可以这样写int* p;或int * p;都是可以的。
而直接出现在变量后(不是定义时),就表示解引用.
int *p;
p = &n;
是先定义p为一个int型的指针,然后让p等于(指向)整型n的地址
而int *p = &n; 变量p实际上是在定义的同时赋了初值,因此这里p前面的*是要和类型(也就是int)合起来看,表示p是一个int型的指针!此时,千万不要把*和p一起来看!
所以
int* p; //我有意把*写得和int靠拢一些:),强调int*是一种类型
p = &n;
和
int* p = &n;
是一回事
就好比:
int i;
i = n;
和
int i = n;
是一回事
而*p = *p + 6;中p前面的*就是解引用符了
不要把概念搞混了啊,呵呵!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询