一个怪异的有关问题。不明白

一个怪异的问题。不明白
void main()
{
char *p = "123.3";
char s[] = "123.3";
double t;
sscanf(p, "%lf", &t);
}
上面的一段代码在VC6.0下运行时有问题的。编译能通过,在运行时报C运行时错误!
如果给t初始化就能解决问题,不知道为什么。大家帮忙分析!

------解决方案--------------------
VC的CRT在帮你做检查.发现在第一次使用t之前.你并没有对他初始化.这是错误的.