2 trybye TRYBYE 于 2016.09.15 15:35 提问

对一个int类型赋值字符串会是什么结果

图片说明如图取值和取地址得到的结果不知道有什么联系

2个回答

qq_29594393
qq_29594393   Ds   Rxr 2016.09.15 16:24

具体情况不太清楚,对C的了解也只是留在学过C语言
不过可以简易的说明一下变量,就是8个基础类型是放在栈中的,而字符串是对象,是放在堆中的,
放在栈中的变量可以互相转换,如果太大或太小,就会溢出,只有部分精度,
而对象是在堆中占 的一块内存,将对象赋值给变量,取得应该是前几位的地址

qq423399099
qq423399099   Ds   Rxr 2016.09.19 13:28

首先你的int a = "0";在有些编译器下是无法通过编译的,比如VS,而你的cfree是可以的
此时a保存的其实是"0"这个常量字符串位于常量区的一个地址。
你也没必要去理解这个结果,因为按标准来说就是错的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!