作者mouse0411 (mouse)
看板C_and_CPP
标题[问题] vc指标 与tc指标
时间Wed Apr 22 23:56:55 2009
请问版上大大
小弟我用TC测试了一小段指标程式
#include <stdio.h>
#include <stdlib.h>
void main(void)
{
int *prt;
printf("%x",prt);
}
这样在TC上的答案是"4f0"
但是在VC上却是"ccccccc"
导致在VC上不能再利用prt做别的东西
不知道是不是小弟哪里有用错
请大大们教导
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.166.105.77
1F:推 QQ29:这记忆体位置不是不一定嘛 你要用旧new int ;阿 04/23 00:00
2F:→ iamivers0n:malloc 04/23 00:08
3F:推 cismjmgoshr:变数还没初始化,里面的值不确定是什麽,也不能使用 04/23 00:33
4F:→ cismjmgoshr:就算用malloc抓了一块记忆体空间给它,里面存的值会 04/23 00:35
5F:→ cismjmgoshr:变成某一个记忆体位址,印出这个位址也看不出里面有啥 04/23 00:36
6F:推 james732:VC会是cccccc,是微软的贴心,为了避免使用者误用。 04/23 02:32
7F:→ mouse0411:请问楼上大大 那要如何更改cccccc?? 04/23 08:06
8F:推 VictorTom:原po建议您还是搞清楚指标与变数初始化值的重要性... 04/23 09:42
9F:→ VictorTom:这段code不管印出什麽对你来说都是没意义的, 对你来说 04/23 09:42
10F:→ VictorTom:都要是能拿来用的, 如果你当初对4f0直接*ptr使用, 那绝 04/23 09:42
11F:→ VictorTom:对是错误的用法, 这段code根本没有什麽"正确答案"才对. 04/23 09:43
12F:→ VictorTom:VC会把定义为给值的变数都给0xcccccccc只在debug build 04/23 09:43
13F:→ VictorTom:时做, 目的是为了帮你抓出定义为使用或为给值就取值等. 04/23 09:44
14F:→ VictorTom:别字更正, 上两行: 为使用 => 未使用 04/23 09:45
15F:推 fjm31714:你之前到底用他做过什麽....... 04/23 10:28