怎么用vs2010写c语言怎么运行程序

一步步教你从VC 6.0 转到 Visual Studio 编写C程序
之前一直习惯用VC 6.0编写C程序,但是换到或者win10后,VC的各种不兼容,各种闪退实在让人无语。所以转到Visual Studio进行C,用过之后发现效果非常好。本文专门为哪些刚接触VS的人员写点自己的心得,同时对初次接触VS可能遇到的问题进行简要分析。
1、怎样用VS配置C工程
对于VS的安装,网上很多安装包,可以根据需要安装。我安装的是VS2010,建议安装VS2013及后序版本。这里不在介绍安装过程,主要以图片形式说明怎么建立C工程:
2、关于自动补全
可以使用快捷键 ctrl +j 或者安装visual assist x ,网上的安装包很多,安装比较简单。安装之后,VS上面显示如下:
3、可能会出现的问题
Q1:Cannot find or open the PDB file
如:'C:\Windows\System32\kernel32.dll',Cannot findoropen the PDB file
程序具体报错如下:
解决办法:从微软符号服务器上面将其下载并缓存下来。
缓存之后,将微软符号服务器的勾选框去掉,不然每次要下载,降低速度。之后成功解决问题。
4、程序输出不了结果闪退
Q: 程序&[14528] BiTree.exe: 本机&已退出,返回值为 0 (0x0)
可能你像VC 6.0上面打印hello world ,你都看不到窗口上面显示数据。这里我们可以加一句:system(&pause&); 解决这个问题。温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
出现向导,按“下一步”,选择空项目……文档的那些程序例子都是按这样创建的……
(注意“windows应用程序“和”空项目“)&添加CPP文件,用于写代码……&在右边的“解决方案管理器”(你也可以在菜单“视图(V)”的下拉列表找到)的文件夹右击——&添加——&新建项新建CPP&
02.添加资源:在右边的“解决方案管理器”(你也可以在菜单“视图(V)”的下拉列表找到)的资源文件夹右击——&添加——&资源&我们的图标,图片,对话框都在这里添加:选择“Dialog”,按下新建……即可新建dialog对话框,例子的小程序都是用它来当界面窗体的……!&新建后的对话框如下图……你可以自由发挥,改变窗体的属性(如窗体左上角的文字你可以在对话框的caption属性改),在工具箱中拖入控件&你可以在对话框上右击选择属性,来改变对话框的属性&下图你也可以看到,工具箱的下方可以切换到资源视图,看看工程所包含的资源文件&控件直接在工具箱拉出来,然后在对话框里拖动鼠标画出来&接着是加入图标和图片,图标是Icon ,图片是Bitmap。都是先选择要加入的类型(下图是选择图标),然后按下“导入”!记得是“导入”!!!这样子你可以选择你想要加入的图标文件或图片……对于图标文件(.ico)直接导入就会在对话框程序编译时自动加上。你在vs2010写黑窗体的控制台程序依旧可以用这个方法加入图标……O(∩_∩)O哈哈~
03. 图片控件的使用注意:&在工具箱中按下“Picture Contro”,然后在对话框上画出&大小自定,初画时是透明的方框&我们在属性窗口更改它的属性:&Type:Bitmap (样式改为位图,于是变成下图的样子,一个小图)&Image:(这个属性只有在Type为Bitmap时并且添加了图片资源才能用,在其下拉列表中现在刚才导入的图片的ID,并且图片的大小会根据原图大小而定,你可以先用图片处理程序处理图片再导入以获得想要的大小……)&有时候会将一些控件挡在下面,你可以将按钮剪切后再弄图片,然后在图片上粘贴按钮……或许重新画也可以&每一个控件都有自己的ID(如默认的取消按钮是:IDCANCEL),用来识别……&Dialog里面的图片边缘有空位,你可以将它们拉掉……修改对话框的属性:&caption:梦幻祈祷&Center:true (窗体居中)&Minimize Box:true (拥有最小化)&加入代码,按下绿色的“?”键进行编译运行:有时候有些控件画出后老是选不中,这时你可以在属性栏最上面的下拉列表中选择控件
04.以下是代码(这是简单的模板,如果你是用这种方法创建对话框程序的话可以使用):#include &tchar.h&#include &Windows.h&#include "resource.h" INT_PTR CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam){switch(uMsg){case WM_INITDIALOG :{//对话框初始化的消息,没有进行特别处理的话可以直接省略。}case WM_COMMAND : //按钮被按下的消息{switch (wParam){case IDOK :{//ID是 IDOK 的按钮被按下MessageBox(hwndDlg,_T("试手的实验程序O(∩_∩)O哈哈~ \n公司:Erbi-lucifer \n作者:【Erbi-lucifer:光影】 \n时间:日20:57:37"),_T("光影软件"),MB_OK);}case IDCANCEL:{ //ID是 IDCANCEL 的按钮被按下EndDialog(hwndDlg, IDCANCEL);//结束}}}default:} return 0;}&int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) //主函数{DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG1), NULL, DialogProc); //弹出对话框return 0;}
对于windows的入门,网上有许多文章,都可以去学习学习……O(∩_∩)O哈哈~以下是运行效果:简单的弹出对话框窗口完成了这是图片:
最后:对于windows的消息机制,句柄之类的知识可以看看《windows程序设计》,虽有些深奥,入门则可以想了解这本书前面的一些基础,等一段时间,有基础了再去深入研究……&现在要知道的是;int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)&它是主函数,相当于控制台的main&int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)&这个是等同上一个的,是它的宏,随便你选择一个。第一个参数被称作「执行实体句柄」,程序通过检查hPrevInstance参数就能够确定自身的其它执行实体是否正在运行。传给WinMain的第二个参数总是NULL(定义为0),这是为了兼容16位的机子而存在的,现在已经过时了。第三个参数是用于执行程序的命令列。某些Windows应用程序利用它在程序启动时将文件加载内存。相当于main函数的参数。如果你的程序需要带参数运行,那就多注意一下这个参数。*重要一点,文件右击-》打开方式-》(或双击运行)-》弹出程序并打开文件。这是将文件名作为参数传送给程序的过程!如:自己制作的视频播放器关联文件后,双击视频文件,就会弹出你的播放器,此时你如果没有对传来的参数进行处理(如加入到播放列表进行播放),那就只有弹出播放器木有播放……%&_&%第四个参数指出程序最初显示的方式,可以是正常的或者是最大化地充满整个画面,或者是最小化显示。&
/*****************************************************************************DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG1), NULL, DialogProc);&******************************************************************************/用于弹出对话框。参数一:执行实体句柄,代表本程序的东东。就是主函数的第一个参数。参数二:资源,加载的资源文件里面那个ID是IDD_DIALOG1的对话框。参数三:父窗口的句柄,这里只有它一个,木有父窗口,于是是NULL。参数四:是用来处理windows传给这个窗口消息的函数。该函数一般是:/*************************************************************************INT_PTR CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam){return 0;}*************************************************************************/参数一:对话框的句柄,很重要的东东……参数二:消息的类型,都是一些“WM_”开头的东东。参数三:指定消息特定的其他信息。如控件的ID。参数四:依旧是指定消息特定的其他信息。这个函数里面一般都是switch(uMsg)对消息进行分类处理。常用的消息:WM_CREATE:一开始加载窗体的消息&WM_PAINT :重画窗体的消息(如窗体大小改变时)WM_KEYDOWN:键盘按下的消息&WM_RBUTTONDOWN:鼠标右击&WM_CLOSE:准备退出&WM_DESTROY :发送退出消息,退出消息循环然后根据需要将函数放入消息中,但随着工程量的增大,往往会使用其他类型的方法进行处理。这里是简单的入门,与是我们就用它了……
/********************************************************#include &tchar.h&#include &Windows.h&#include "resource.h"&*********************************************************/001.windows.h:windows编程要加的头文件……这个不用说了。002. tchar.h&:宽字符处理需要的函数,如“_T()”,这个等同于“TEXT()”,里面用来放字符串,表明是宽字符,在vs2010中要分清宽字符和普通字符,因为有些函数只支持宽字符,而有些不支持。在vs2010中,MessageBox函数需要使用"TEXT()"或"_T()"来表示内容是宽字符(因为默认情况下MessageBox是宽字符版的MessageBoxW),而当你不想用宽字符时,则需要使用MessageBoxA函数……以下是转换函数:MultiByteToWideChar:普通字符转宽字符WideCharToMultiByt:宽字符转普通字符003.resource.h:资源文件的头文件,对于简单入门来说,程序里直接用编译器的对话框做主窗口,需要的资源直接添加,控件也可以直接画出来,但后面我们还需要自己去用代码创建窗口,使用控件才算C的SDK入门……对于程序的学习,当然是越底层越好,这样理解才比较透彻,但用于开发,当然需要高级的语言才比较省事。
阅读(169)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_',
blogTitle:'C语言windows编程基础之创建项目(vs2010)',
blogAbstract:'01. 创建项目文件\n文件—&新建:选择win32程序,填入名称,按下确定……\n',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:1,
publishTime:8,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 2160 人关注过本帖
标题:各位大大,小白我用VS2010写C语言怎么总报错
等 级:新手上路
结帖率:100%
&&已结贴√
&&问题点数:20&&回复次数:17&&&
各位大大,小白我用VS2010写C语言怎么总报错
我在学习C语言,之前用VS2010学习的C#,所以现在想继续用VS学C语言,可刚写个For循环怎么就总报错,还请各位大大不吝指点!
#include&stdio.h&
void main()
&&& for(int i=0;i&8;i++)
&&&&&&&&printf(&%d&,i);
这怎么就会报错呢
错误&&& 8&&& error C2059: 语法错误:“)”&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 4&&& 1&&& CalcForC
错误&&& 5&&& error C2065: “i”: 未声明的标识符&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 4&&& 1&&& CalcForC
错误&&& 7&&& error C2065: “i”: 未声明的标识符&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 4&&& 1&&& CalcForC
错误&&& 10&&& error C2065: “i”: 未声明的标识符&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 6&&& 1&&& CalcForC
错误&&& 13&&& error C2065: “i”: 未声明的标识符&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\calc.c&&& 82&&& 1&&& CalcForC
错误&&& 14&&& error C2065: “i”: 未声明的标识符&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\calc.c&&& 82&&& 1&&& CalcForC
错误&&& 15&&& error C2065: “i”: 未声明的标识符&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\calc.c&&& 82&&& 1&&& CalcForC
错误&&& 3&&& error C2143: 语法错误 : 缺少“)”(在“类型”的前面)&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 4&&& 1&&& CalcForC
错误&&& 9&&& error C2143: 语法错误 : 缺少“;”(在“{”的前面)&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 5&&& 1&&& CalcForC
错误&&& 1&&& error C2143: 语法错误 : 缺少“;”(在“类型”的前面)&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 4&&& 1&&& CalcForC
错误&&& 2&&& error C2143: 语法错误 : 缺少“;”(在“类型”的前面)&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 4&&& 1&&& CalcForC
错误&&& 4&&& error C2143: 语法错误 : 缺少“;”(在“类型”的前面)&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 4&&& 1&&& CalcForC
错误&&& 12&&& error C2143: 语法错误 : 缺少“;”(在“类型”的前面)&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\calc.c&&& 81&&& 1&&& CalcForC
警告&&& 6&&& warning C4552: “&”: 运算符不起任何作用;应输入带副作用的运算符&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\protect.c&&& 4&&& 1&&& CalcForC
警告&&& 11&&& warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.&&& c:\users\administrator\documents\visual studio 2010\projects\calcforc\calcforc\calc.c&&& 80&&& 1&&& CalcForC
搜索更多相关主题的帖子:
等 级:业余侠客
帖 子:51
专家分:217
没有开启C99及更高模式标准
等 级:新手上路
回复 2楼 李掌柜
什么意思呢? 那么我该怎么做? 我是新手麻烦大大说详细一点
等 级:业余侠客
帖 子:51
专家分:217
等 级:新手上路
哪里有选项可以调这个呢。。。
等 级:新手上路
这么说我的2010注定玩不了C语言咯??
等 级:贵宾
威 望:304
帖 子:25793
专家分:48814
授人以渔,不授人以鱼。
等 级:业余侠客
帖 子:51
专家分:217
不知道楼主听说过“百度“这个名词木有,,
等 级:新手上路
我百度了半天找不到能解决我问题的答案才来这里的,原谅我智商有限,原谅我是小白
等 级:新手上路
而且我百度的c99,很多网友说VS2010不支持c99
版权所有,并保留所有权利。
Powered by , Processed in 0.111677 second(s), 7 queries.
Copyright&, BCCN.NET, All Rights Reserved

我要回帖

更多关于 vs2010写c语言怎么运行 的文章

 

随机推荐