vs2012调试

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

VS2012自动格式化代码 Ctrl+K+D

VS下调试一定要注意尽量不要用F11,要用F10!不然需要引入库文件,提示的警告信息可以“忽略”即可

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

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

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

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

首先装好VS2012.

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

然后“欢迎使用 Win32 应用程序向导”下一步,需要注意的是附加类型勾上“空项目”,再完成

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

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

自己写代码:

  1. #include    
  2. main()  
  3. {  
  4.      int  a=1;  
  5.      int  * b=&a;  
  6.     printf( "%d" ,b);  
  7.   
  8. }  

然后在printf处设置断点。

按F5启动调式。

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

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

再来看看字符串指针:

  1. #include    
  2. main()  
  3. {  
  4.      //int a=1;   
  5.      //int * b=&a;   
  6.      char  * c= "abcama1w" ;  
  7.      char  *d=c;  
  8.     printf( "%s" ,d);  
  9.   
  10. }  

是不是很清晰。

再看数组

  1. #include    
  2. main()  
  3. {  
  4.      //int a=1;   
  5.      //int * b=&a;   
  6.      char  c[12]= "abcama1w" ;  
  7.      char  *d=c;  
  8.     printf( "%s" ,d);  
  9.   
  10. }  
全部评论

相关推荐

03-15 20:26
已编辑
电子科技大学 C++
T3题面:给一个3e5数组,每次询问长度为len的子数组乘积的和,如果子数组乘积>1e9,则视为0.赛后一分钟想出来了,比赛时打了个暴力+线段树注意到1e9大约是2^30, 因此len长度如果>30就直接输出0,30以内做一个记忆化就行,复杂度O(30*n)感觉是以前比赛做过的题,忘了怎么做了。。。---upd: 忘了数据范围了,如果有0,1的话那这样也不行
blueswiller:给出一个做法,刚刚才想到,应该没问题,时间复杂度为 O(max(30n, nlogn)): 1. 根据 0 切分数组。2. 现在问题转化为>=1 的情况,我们首先维护每一个数前一个 > 1 的数的位置,同时维护一个长度的差分数组,初始值全为 0。3. 我们从每一个数 i 开始向前跳,至多跳 30 次,维护这个过程中的乘积,于是得到 30 个区间加和。举例:假设从 j1 跳到 j2 ,相当于对查询长度 (i- j1 + 1) 至 (i - j2) 贡献 a_i * ... * a_j1。4. 对于所有区间加和,我们采用差分数组结合树状数组对其进行维护,由于长度至多为 n ,树状数组构建的复杂度为 O(nlogn),于是,构建阶段的复杂度为 O(max(30n, nlogn))。在线单次查询的复杂度为树状数组查询的复杂度 O(logn)。
投递淘天集团等公司10个岗位 > 笔试
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务