使用VS2010调试技巧让C指针无处遁形

Linux 下调试远没有windows下的VS方便,不管是VC++6还是VS2003,2005,2008,2010

所以我觉得不妨用VS调试程序,可以用VS来研究C语言似乎是一个比较不错的主意,当你的C已经很好的时候可以直接在Linux下去手写代码了。

当然windows下写的C程序放到Linux下运行,也是可以的,不过需要知道的是有些语法Windows下支持但是Linux下是不支持。

还有时会有乱码,需要注意!注意!

其实微软是希望用C++的,所以默认VS2010是用来开发C++的。准确的说是VC++。

首先装好VS2010.

新建一个VC++的 win32控制台项目:

使用VS2010调试技巧让C指针无处遁形

然后“欢迎使用 Win32 应用程序向导”下一步,需要注意的是附加类型勾上“空项目”,再完成使用VS2010调试技巧让C指针无处遁形

系统自动生成解决方案文件夹,在右侧“解决方案”中的“源文件”中新建文件即可。

使用VS2010调试技巧让C指针无处遁形

弹出的窗口默认选中的是C++的cpp文件,你只要将文件名改为.c即可,也可以点左边“代码”菜单筛选下。

使用VS2010调试技巧让C指针无处遁形

自己写代码:

#include <stdio.h> main() { int a=1; int * b=&a; printf("%d",b); }


然后在printf处设置断点。

使用VS2010调试技巧让C指针无处遁形

按F5启动调式。

使用VS2010调试技巧让C指针无处遁形

在“监视”窗口,你可以自己添加需要监视的元素,很清晰的看到内存的值在右侧。

也可以使用 命令和即时窗口 有兴趣可以自己研究。

再来看看字符串指针:

#include <stdio.h> main() { //int a=1; //int * b=&a; char * c="abcama1w"; char *d=c; printf("%s",d); }

使用VS2010调试技巧让C指针无处遁形

是不是很清晰。

再看数组

#include <stdio.h> main() { //int a=1; //int * b=&a; char c[12]="abcama1w"; char *d=c; printf("%s",d); }


使用VS2010调试技巧让C指针无处遁形

下面这张图更清晰的反映数组和指针的关系

使用VS2010调试技巧让C指针无处遁形

再看看d

使用VS2010调试技巧让C指针无处遁形