2023年12月20日发(作者:)
VS2008常见问题汇总
作者 邵发
官网
本文档是《C/C++学习指南》系列教程的配套资料,最新版本请到官网下载。
1. 为什么VS2008安装不了?
大多数同学的安装都没有问题。如果你的安装有问题,很可能是你的Windows系统是精简版的。尝试以下办法:
* 重新启动电脑,再安装试试
* 重装一个完整版的Windows,不要用ghost安装盘,再试试
* 放弃VS2008,试一下VS2010能不能装上。
2. 为什么我的VS2008不显示行号?
如图所示,每行前面的数字叫做“行号”
按照下面的方法,将VS2008的行号显示出来:
在菜单里执行“工具 | 选项”
左侧选择“文件编辑器 | C/C++”
3. 怎么修改VC里编辑器的字体大小?
在VS的菜单“工具 | 选项”
4. 我建立第一个Hello,World项目都不成功?
好吧,你是不够仔细了,请严格按照这个文档最后面的附录1、不要有任何改动来操作一遍。
5. 编译错误: 找不到stdafx.h ?
在新建项目的时候,选择“空项目”
6. 项目编译成功了,但是在Debug目录下找不到?
并不是找不到,而是后缀名默认是不显示的。
在Win7下,在控制面板里找到“文件夹选项”,在“查看”选项卡里,不要勾选“隐藏已经文件类型的扩展名”。如下图所示。
7. 按Ctrl+F5运行程序时,程序一闪即退?
这种问题在Win XP上会出现,在Win7以上版本不会出现。
所谓一闪即退,是程序的正确退出。
如果你的电脑上是Win XP,则使用这样的代码:
#include
#include
int main()
{
}
system("PAUSE"); // 这里加一行
return 0;
printf("hello,world!n");
8. 编译时提示cannot open *.exe for writing?
例如:
fatal error LNK1168: cannot open Debug/ for writing
在WinXP上会有这个问题。
这是因为你上次运行程序后,没有把你的关闭。
解决办法:每次运行完毕后,关闭控制台窗口。
9. 如何像视频里演示的那样,一次性地注释多行?
需要你安装Visual Assist X,这是个VS2008的插件。
安装VA后,即可以实现一次注释多行:
- 选中多行,按/键,就可以了
10. 为何我的VS2008没有视频里的那种快速自动补全功能?
请安装Visual Assist X。
在官网上下载此软件,里面有安装说明。
11. 为何我的放在别人的电脑上无法运行?
答案:需要将项目设置为静态编译。静态编译出来的 *.exe可以直接发给别人使用(不需要别人在电脑上安装VC)
方法:
右键点你的项目,在右键菜单里点“属性”,
在“配置属性 | C/C++ | 代码生成”里,将运行时库选择为 "/MTd"
然后重新编译项目即可。
如下图所示:
重新编译:
12. 如何在命令行窗口cd到一个目录?
参考1.1讲行操作
例如
cd /d c:testHello
cd /d e:whatMyTest
注意,使用参数 /d ,这个/d是一个参数,d的意思是drive。(很多同学错误以为这是D盘的意思)
13.
VS2013下面为什么用scanf会编译器报错?
VS2013不让用scanf了。解决办法:在代码的最上面添加一行,如下所示,
#define _CRT_SECURE_NO_WARNINGS
#include
int main()
{
}
printf("hello,world!n");
return 0;
14. 无法解析的外部符号_main
生成项目时出错,提示无法解析的外部符号_main,如下图所示:
原因:你的代码里没有 main函数。新手往往会把 main 写成 mian,自己检查一下吧
15. 无法解析的外部符号_WinMain
生成项目时出错,提示无法解析的外部符号_WinMain,如下图所示,
原因:在创建项目时,项目类型应该选“控制台应用程序”。
16. 为什么没有显示左侧的“解决方案资源管理器”?
原因:应该是你不小心叉掉了这个窗口。
解决方法:在菜单里选择“视图 | 解决方案资源管理器”即可显示。
17. 我的电脑上有VS6.0,但我不会卸载VS6.0,怎么办?
没有关系。直接装VS2008,两者可以并存的。
18. 我的电脑上有VS2013或2015,能不能凑合用?
可以凑合用。在使用scanf时会有问题,问题的解决办法见本文档。
19. 编译第一个项目时显示:“生成时出错”
提示错误:error prj003: 生成时出错
原因:你的Windows系统有问题,不要用XXX ghost安装盘,换一个正常版本的Windows。
建议:重装一个正常的系统,或者换装VS2010,2012,2013,2015,只要有一个好用就行。
20. 视频网站速度好卡,不清楚,或者登录不上去
本套视频在多家网站上发布,除了第一集略有不同之外,其他部分相同。
推荐到优酷上观看,支持超清、高清观看,也支持下载到本地观看。(用优酷客户端,可以将优酷上的视频下载到本地,存为MP4文件)
21. 编译错误提示:_main 已经定义
按F7生成项目时出错,提示_main已经在中定义
原因:大家在初学时往往喜欢在一个把所有的练习cpp放在同一个项目下面,这样是不可以的。如下图所示,有的同学会在一个项目下面放多个cpp,例如"练习"和"练习",这样很可能会导致上面的编译错误,具体原因在第18章中才有讲解。
解决办法:
第一种办法:对于新手来说,建议在一个项目中只保留一个cpp文件。(推荐)
第二种办法:只保留一个main,其他cpp里的main改名为main1, main2,防止重名即可
22. fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
右键点项目,属性,“清单工具 | 输入和输出 | 嵌入清单”(如下图),选择“否”,点确定按钮。然后,点一下菜单里的“生成 | 重新生成解决方案”,重新生成一下应该就可以了。
23. 附录1 使用VS2008建立第一个Hello,World项目
这个步骤就是视频1.2里的截图,为了避免有些同学看视频不仔细,在此篇附录中描述一下整个流程。
(1) “文件 | 新建 | 项目”
(2) 新建项目
注意图中的红圈处。新手第一次操作的时候,为了避免不必要的麻烦,请完全照抄。熟了之后再自己改名字。
(3) 这个对话框不需要改什么。点“下一步”就行。
(4) 注意红圈处的选择。一定要把“空文件”打上勾。
(5) 右键点项目名称 ,“添加 | 新建项 ”
(6) 注意红圈处的选择。输入
(7) 双击,编辑代码。一定要注意,C++里的标点符号是严格有意义的,不能丢,不能改。
(8) 编译,运行
按F7编译,检查有没有问题
(9) 如果编译没有问题,则按Ctrl + F5运行


发布评论