c语言char和int可以互相赋值,但指针不能赋值,char *和int *不能直接赋值,为什么呢? 谢谢
2013-07-19
展开全部
char 和 int 是通过ASCLL码相互赋值的 例如 a 以 %d 输出 则为97 以%c输出则为'a' char指针和int指针 之所以不能相互赋值是因为他们的长度不同 Tc 下 char 只有一个字节8个二进制位 而int 则是两个字节16个二进制位 由于指针所指向的是变量的起始地址 那么在当指针指向一段连续内存时 它找到每个变量是通过对起始地址运算得到的下一个元素的起始地址 然后根据长度 取出里面的内容 输出我们想要的格式 所以不同的类型长度不同 相互赋值 必定无法得到想要的结果
2013-07-19
展开全部
char与int的相互赋值是通过ascII码计算的,char * 和 int * 的变量都是指针 ,也就是都是地址因此不能直接赋值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-19
展开全部
hjdjsdjsdhasj
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询