C语言指针在VS中的不同?
来源:互联网 发布:ubuntu麒麟共享文件 编辑:程序博客网 时间:2024/04/29 20:45
前两天使用VS2005Team(盗版)弄C语言的时候,发现指针异常的难用,明明刚设立的变量都没有初始化就不为NULL了。搞得头昏昏的。
今天重新实验了一遍,又用刚装的VS2008Professional(正版)。请看如下代码:
#include <stdio.h>struct node{int id;struct node *n;};struct node *n;int main(int argc, char *argv[]){if (n==NULL){printf("ERROR/n");}else{printf("%d /n", n->id);}return 0;}在2005和2008里边编译运行的结果均为: ERROR
但是如果把 7行移动到9行的位置,那么在2005和2008中结果均为:程序遇到问题需要关闭 ........
如果在刚才的改动基础上,在这一句话前或后加上一句 int a=0;那么在2005种结果为:2025346902(或者其他数)
在2008中结果为:ERROR。
毕竟不是计算机专业的,对于堆栈始终没有搞明白,而且对于指针一直都有点迷糊。
本来我就是这样一个人了,偏偏拿到的编译器还这个样子,两个版本不对劲。
不过现在发现了这个问题,对于之前一直想要解决的那个问题看来有希望了。
另外,昨天使用2005编译spidermonkey,始终不成功,今天装了2008之后,再用2005编译,又成功了。
昨天最后使用VC6编译成功,但是只能用Debug模式下的,Release下不能用;今天虽然使用2005和2008都编译成功了,但是在命令行下运行作为shell时还好,解析js文件遇到函数就抱错,当然遇到其它东西也可能报错。郁闷。
还有就是今天装了2008,比2005小很多,发现没有windowsSDK,虽然安装过程中说了装。但是没有找到,不过使用<windows.h>还是没有问题的,不知道怎么回事。
这些东西越来越大、越变越复杂,时代的脚步,到底是谁在走啊?
- C语言指针在VS中的不同?
- 256路TRIE的C实现以及指针在VS中的不同续前
- C指针在不同需求中的应用
- const 在c c++语言中的不同
- C语言 数组VS指针
- C语言中的指针
- c语言中的指针
- C语言中的指针
- C语言中的指针
- c语言中的指针
- c语言中的指针
- C语言中的指针
- C语言中的指针
- C语言中的指针
- C语言中的指针
- C 语言中的指针
- c语言中的指针
- C语言结构体指针在函数调用中的使用
- 如何学习JAVA
- 用C#启动本地系统的进程(ping.exe)
- 在eclipse 中如何导入已经存在的项目
- 而有些偶然的缘分
- Java Reflection (JAVA反射)
- C语言指针在VS中的不同?
- 简约之美,JQuery之进度条插件
- Report Server 报表服务器安装sp2补丁后,报表服务器不能用的问题解决方法
- java.net.HttpURLConnection的使用
- 如何提高自己的Java编程水平
- C#编码规范
- asp.net 中利用控制台调试程序.就像java的System.out.prinitln();
- Use Web Service
- 实战Java多线程编程之不提倡的方法