VS2010 C++编程教程
使用VS2010创建C程序2017
使用VS2010创建C程序1、打开Microsoft Visual Studio 2010→点击“新建项目”创建一个空工程;(或点击文件→新建项目)2.Visual C ++ →“Win32控制台应用程序”→名称输入项目名称→位置:点击浏览选择D盘任意路径→“确定”;3、“下一步”;4、去除“预编译头”,勾选“空项目”,其他默认→“完成”;5、右键单击左侧“源文件”→“添加”→“新建项”;6、选中“C++文件(.cpp)”→新建名为“new.c”的项(注意,务必在名称后面加上.c后缀,这是将按C程序进行编译);7、编写个C程序试试;代码内容:8、然后点击菜单上 调试->开始执行(不调试),编译成功,得到如下结果;(如果没有出现 开始执行(不调试) ,直接按Ctrl+F5 )小贴士:1、如果要另外再写一个C 程序,必须将当前项目关闭,方法:点击文件->关闭当前项目。
然后再从上述的第2步开始写一个新的程序。
2、如果用VS 编译C 程序时,编译框很快就会消失。
如果我们在程序的最后加上一段代码:system(“pause ”);整个代码如下:VS 就能像VC 6.0一样让编译框暂停下来。
3、如果在第5步中没有见到左侧边栏(如图一),则只需将重置窗口布局即可(如图二、三);图一图二图三#include<stdio.h>int main(){printf(" o o\n");printf(" o o o o\n");printf(" o o o o \n");printf(" \n");printf(" \n");printf(" \n");printf(" oooooo \n");return 1;}。
关于vs2010(英文版)编写c文件的问题
用visual studio 2010 英文版编写C文件
总结了很多关于vs2010编写c文件的资料,在网上也看了许多,但是都没有关于vs英文版编写c文件的资料,现在总结如下献给大家,希望能帮助到初学者。
一.打开vs2010,主界面如下。
右上方(有的也在左上方)会有一个solution explorer 如果没有,可以再视图view中打开(后面会有用处的)。
选择solution explorer打开解决方案资源管理器。
二.新建空文件。
点击project进入如下界面:如下选择,同时在name处输入所要创建的文件夹名称及文件夹所处的位置然后ok
进入如下界面:
再next,进入如下界面:
一定要选择empty project空文件,finish之后出现下图。
三.添加C文件。
选择C++file 但是在name处一定要输入后缀为.c的文件名。
完成后如下:
选择如图中的C文件.c打开。
就可以编写程序了。
四:移除新增文件:在solution explorer中点击resource file
进入以下界面:
可重复步骤三继续添加。
谢谢观赏!。
VS-C++2010入门教程
第四章VC2010中初学者常见错误、警告和问题这一章将帮助大家解释一些常见的错误、警告和问题,帮助大家去理解和解决一些常见问题,并了解它的根本原因。
iostream.h与<iostream>下面的代码为什么在VC2010下面编译不过去?#include <iostream.h>int main(){cout<<"Hello World."<<endl;return 0;}错误信息:fatal error C1083: 无法打开包括文件:“iostream.h”: No such file or directory造成这个错误的原因在于历史原因,在过去C++98标准尚未订立的时候,C++的标准输入输出流确实是定义在这个文件里面的,这是C风格的定义方法,随着C++98标准的确定,iostream.h已经被取消,至少在VC2010下面是这样的,取而代之的是我们要用<iostream>头文件来代替,你甚至可以认为<iostream>是这样定义的:namespace std{#include "iostream.h"}因此我们可以简单的修改我们的Hello World。
#include <iostream>using namespace std;int main(){cout<<"Hello World."<<endl;return 0;}iostream.h是属于C++的头文件,而非C的,因此标准订立的时候被改成了<iostream>。
而C的头文件stdio.h等依然可以继续使用,这是为了兼容C代码。
但是它们依然有对应的C++版本,如<cstdio> <cstdlib>等。
记住,在VC2010上面采用C++风格的头文件而不是C 风格的头文件,除非你是在用C。
VS2010之MFC入门到精通教程(1-55全部)
VS2010/MFC编程入门教程之目录第一部分:VS2010/MFC开发环境VS2010/MFC编程入门之前言VS2010/MFC编程入门之一(VS2010与MSDN安装过程图解)第二部分:VS2010-MFC应用程序框架VS2010/MFC编程入门之二(利用MFC向导生成单文档应用程序框架)VS2010/MFC编程入门之三(VS2010应用程序工程中文件的组成结构)VS2010/MFC编程入门之四(MFC应用程序框架分析)VS2010/MFC编程入门之五(MFC消息映射机制概述)第三部分:对话框VS2010/MFC编程入门之六(对话框:创建对话框模板和修改对话框属性)VS2010/MFC编程入门之七(对话框:为对话框添加控件)VS2010/MFC编程入门之八(对话框:创建对话框类和添加控件变量)VS2010/MFC编程入门之九(对话框:为控件添加消息处理函数)VS2010/MFC编程入门之十(对话框:设置对话框控件的Tab顺序)VS2010/MFC编程入门之十一(对话框:模态对话框及其弹出过程)VS2010/MFC编程入门之十二(对话框:非模态对话框的创建及显示)VS2010/MFC编程入门之十三(对话框:属性页对话框及相关类的介绍)VS2010/MFC编程入门之十四(对话框:向导对话框的创建及显示)VS2010/MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)VS2010/MFC编程入门之十六(对话框:消息对话框)VS2010/MFC编程入门之十七(对话框:文件对话框)VS2010/MFC编程入门之十八(对话框:字体对话框)VS2010/MFC编程入门之十九(对话框:颜色对话框)第四部分:常用控件VS2010/MFC编程入门之二十(常用控件:静态文本框)VS2010/MFC编程入门之二十一(常用控件:编辑框Edit Control)VS2010/MFC编程入门之二十二(常用控件:按钮控件Button、Radio Button和Check Box)VS2010/MFC编程入门之二十三(常用控件:按钮控件的编程实例)VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)VS2010/MFC编程入门之二十六(常用控件:滚动条控件Scroll Bar)VS2010/MFC编程入门之二十七(常用控件:图片控件Picture Control)VS2010/MFC编程入门之二十八(常用控件:列表视图控件List Control 上)VS2010/MFC编程入门之二十九(常用控件:列表视图控件List Control 下)VS2010/MFC编程入门之三十(常用控件:树形控件Tree Control 上)VS2010/MFC编程入门之三十一(常用控件:树形控件Tree Control 下)VS2010/MFC编程入门之三十二(常用控件:标签控件Tab Control 上)VS2010/MFC编程入门之三十三(常用控件:标签控件Tab Control 下)第五部分:菜单、工具栏与状态栏VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)VS2010/MFC编程入门之三十五(菜单:菜单及CMenu类的使用)VS2010/MFC编程入门之三十六(工具栏:工具栏资源及CToolBar类)VS2010/MFC编程入门之三十七(工具栏:工具栏的创建、停靠与使用)VS2010/MFC编程入门之三十八(状态栏的使用详解)第六部分:文档、视图和框架VS2010/MFC编程入门之三十九(文档、视图和框架:概述)VS2010/MFC编程入门之四十(文档、视图和框架:各对象之间的关系)VS2010/MFC编程入门之四十一(文档、视图和框架:分割窗口)第七部分:MFC常用类VS2010/MFC编程入门之四十二(MFC常用类:CString类)VS2010/MFC编程入门之四十三(MFC常用类:CTime类和CTimeSpan类)VS2010/MFC编程入门之四十四(MFC常用类:定时器Timer)VS2010/MFC编程入门之四十五(MFC常用类:CFile文件操作类)VS2010/MFC编程入门之四十六(MFC常用类:MFC异常处理)第八部分:字体和文本输出VS2010/MFC编程入门之四十七(字体和文本输出:CFont字体类)VS2010/MFC编程入门之四十八(字体和文本输出:文本输出)第九部分:图形图像VS2010/MFC编程入门之四十九(图形图像:CDC类及其屏幕绘图函数)VS2010/MFC编程入门之五十(图形图像:GDI对象之画笔CPen)VS2010/MFC编程入门之五十一(图形图像:GDI对象之画刷CBrush)第十部分:Ribbon界面开发VS2010/MFC编程入门之五十二(Ribbon界面开发:创建Ribbon样式的应用程序框架)VS2010/MFC编程入门之五十三(Ribbon界面开发:为Ribbon Bar添加控件)VS2010/MFC编程入门之五十四(Ribbon界面开发:使用更多控件并为控件添加消息处理函数)VS2010/MFC编程入门之前言鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。
MicrosoftVisualStudio2010使用说明2
MicrosoftVisualStudio2010使用说明2Microsoft Visual Studio 2010使用说明概述:1、本说明仅适用于已安装好VS2010的C或C++初学者用户;2、本说明简单介绍了如何使用VS2010编写,调试简单的C或C++程序;3、本说明基于Windows7下安装的Microsoft Visual Studio 2010专业版编写。
操作步骤:1、打开VS010:2、进入开始界面,新建项目:选择左上角的文件->新建->项目3、首先选择项目类型,我们这里选择的是Win32项目,然后输入名称,解决方案名称,还有你需要存放本项目的位置(备注:解决方案和项目的区别在于,解决方案是项目的集合体,就像社区和住户一般),然后点击确定。
4、进入向导界面,选择下一步。
5、进入应用程序设置界面,选择应用程序类型:控制台应用程序,在附加选项中对空项目打勾,然后点击完成。
6、选择源文件,鼠标右击7、选择添加,新建项。
8、选择C++文件,输入文件名(文件名一般与项目名一致)9、进入代码编辑界面,输入程序代码:10、程序输入完毕后,按F7,编译程序,程序编辑区域的下方有一个输出区域,我们可以在输出区域查看程序的编译状态,如果有错误,则按F4即可跳转到出错语句,并且在输出区域可以看到错误的详细状态。
11、出错示范调试:12、调试完成,没有语法错误后,我们按CTRL+F5,运行程序:完毕!13、当我们还需要新建一个类似的程序时,我们可以选择:解决方案,右击鼠标,选择添加->新建项。
14、剩下过程与详见步骤3-11,注意:我们需要运行此程序时不能直接执行步骤13,而应该先将这个项目设为启动项,右击项目,选择设为启动项;。
VS2010_MFC编程入门
VS2010-MFC编程入门之前言鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。
但是教程中讲的例子只是一个个简单的例程,并没有可视化窗口。
鸡啄米在这套VS2010/MFC编程入门教程中将会给大家讲解怎样使用VS2010进行可视化编程,也就是基于窗口的程序。
C++编程入门系列主要偏重于理论方面的知识,目的是让大家打好底子,练好功,在使用VC++编程时不至于丈二和尚摸不着头脑。
本套教程也会涉及到VC++的原理性的东西,同样更重视实用性,让大家学完本套教程以后,基本的界面程序都能很容易编写出来。
VC++简介VC++全称是Visual C++,是由微软提供的C++开发工具,它与C++的根本区别就在于,C++是语言,而VC++是用C++语言编写程序的工具平台。
VC++不仅是一个编译器更是一个集成开发环境,包括编辑器、调试器和编译器等,一般它包含在Visual Studio中。
Visual Studio包含了VB、VC++、C#等编译环境。
当然我们在使用VC++ 6.0的时候为了轻便,总是只单独安装VC++ 6.0。
但自微软2002年发布Visual 以来,微软建立了在.NET 框架上的代码托管机制,一个项目可以支持多种语言开发的组件,VC++同样被扩展为支持代码托管机制的开发环境,所以.NET Framework是必须的,也就不再有VC++的独立安装程序,不过可以在安装Visual Studio时只选择VC++进行安装。
VC++版本的选择:VS2010因为VC++ 6.0以后的版本不再有独立的安装程序,所以鸡啄米在教程中将不会称VC++ 6.0以后的版本为VC++ 7.0等等,而是用VC++所属的Visual Studio的版本名称代替,比如VS2003。
近些年VC++主要的版本包括:VC++ 6.0、VS2003、VS2005、VS2008和VS2010。
Visual Studio 2010入门级使用教程
1.2 创建源程序main.c
这里看到main.c 程序文件
这里可以编辑main.c 程序文件,输入:
#include <stdio.h> void main() { printf("Hello World\n"); }
2 编译+链接
主菜单:BuildBuild Solution 或者组合快捷键:Ctrl+Alt+F7
二、Visual Studio 2010 命令行
运行visual studio的编译命令cl对源程 序main.c进行编译链接生成执行文件 main.exe cl main.c
二、Visual Studio 2010 命令行
运行visual studio的编译 命令cl对源程序main.c进 行编译链接生成执行文 件main.exe
编译生成的结果 运行程序main.exe 程序的输出结果
二、Visual Studio 2010 命令行
如果用Visual Studio的命令行,那怎么生成main.c呢?
可以用用任何文本编辑软件编辑
例如notepad, word编辑 或者Visual Studio编辑
Visual Studio 2010简捷入门
一、Visual Studio 2010 图形界面
启动 vs2010
开始菜单 所有程序 找到文件夹 Microsoft Visual Stud 2010 运行该命令
左边栏是工程文件 的树状浏览器 SourceFiles节点中 放置c/c++源程序
1. 在工程中创建新的源程序
主菜单:ProjectAdd New Item 或者使用组合快捷键:Ctrl+Shift+A
VS2010之MFC入门到精通教程
VS2010/MFC编程入门教程之目录第一部分:VS2010/MFC开发环境VS2010/MFC编程入门之前言VS2010/MFC编程入门之一(VS2010与MSDN安装过程图解)第二部分:VS2010/MFC应用程序框架VS2010/MFC编程入门之二(利用MFC向导生成单文档应用程序框架)VS2010/MFC编程入门之三(VS2010应用程序工程中文件的组成结构)VS2010/MFC编程入门之四(MFC应用程序框架分析)VS2010/MFC编程入门之五(MFC消息映射机制概述)第三部分:对话框VS2010/MFC编程入门之六(对话框:创建对话框模板和修改对话框属性)VS2010/MFC编程入门之七(对话框:为对话框添加控件)VS2010/MFC编程入门之八(对话框:创建对话框类和添加控件变量)VS2010/MFC编程入门之九(对话框:为控件添加消息处理函数)VS2010/MFC编程入门之十(对话框:设置对话框控件的T ab顺序)VS2010/MFC编程入门之十一(对话框:模态对话框及其弹出过程)VS2010/MFC编程入门之十二(对话框:非模态对话框的创建及显示)VS2010/MFC编程入门之十三(对话框:属性页对话框及相关类的介绍)VS2010/MFC编程入门之十四(对话框:向导对话框的创建及显示)VS2010/MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)VS2010/MFC编程入门之十六(对话框:消息对话框)VS2010/MFC编程入门之十七(对话框:文件对话框)VS2010/MFC编程入门之十八(对话框:字体对话框)VS2010/MFC编程入门之十九(对话框:颜色对话框)第四部分:常用控件VS2010/MFC编程入门之二十(常用控件:静态文本框)VS2010/MFC编程入门之二十一(常用控件:编辑框Edit Control)VS2010/MFC编程入门之二十二(常用控件:按钮控件Button、Radio Button和Check Box)VS2010/MFC编程入门之二十三(常用控件:按钮控件的编程实例)VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)VS2010/MFC编程入门之二十六(常用控件:滚动条控件Scroll Bar)VS2010/MFC编程入门之二十七(常用控件:图片控件Picture Control)VS2010/MFC编程入门之二十八(常用控件:列表视图控件List Control 上)VS2010/MFC编程入门之二十九(常用控件:列表视图控件List Control 下)VS2010/MFC编程入门之三十(常用控件:树形控件Tree Control 上)VS2010/MFC编程入门之三十一(常用控件:树形控件Tree Control 下)VS2010/MFC编程入门之三十二(常用控件:标签控件Tab Control 上)VS2010/MFC编程入门之三十三(常用控件:标签控件Tab Control 下)第五部分:菜单、工具栏与状态栏VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)VS2010/MFC编程入门之三十五(菜单:菜单及CMenu类的使用)VS2010/MFC编程入门之三十六(工具栏:工具栏资源及CToolBar类)VS2010/MFC编程入门之三十七(工具栏:工具栏的创建、停靠与使用)VS2010/MFC编程入门之三十八(状态栏的使用详解)第六部分:文档、视图和框架VS2010/MFC编程入门之三十九(文档、视图和框架:概述)VS2010/MFC编程入门之四十(文档、视图和框架:各对象之间的关系)VS2010/MFC编程入门之四十一(文档、视图和框架:分割窗口)第七部分:MFC常用类VS2010/MFC编程入门之四十二(MFC常用类:CString类)VS2010/MFC编程入门之四十三(MFC常用类:CTime类和CTimeSpan类)VS2010/MFC编程入门之四十四(MFC常用类:定时器Timer)VS2010/MFC编程入门之四十五(MFC常用类:CFile文件操作类)VS2010/MFC编程入门之四十六(MFC常用类:MFC异常处理)第八部分:字体和文本输出VS2010/MFC编程入门之四十七(字体和文本输出:CFont字体类)VS2010/MFC编程入门之四十八(字体和文本输出:文本输出)第九部分:图形图像VS2010/MFC编程入门之四十九(图形图像:CDC类及其屏幕绘图函数)VS2010/MFC编程入门之五十(图形图像:GDI对象之画笔CPen)VS2010/MFC编程入门之五十一(图形图像:GDI对象之画刷CBrush)第十部分:Ribbon界面开发VS2010/MFC编程入门之五十二(Ribbon界面开发:创建Ribbon样式的应用程序框架)VS2010/MFC编程入门之五十三(Ribbon界面开发:为Ribbon Bar添加控件)VS2010/MFC编程入门之五十四(Ribbon界面开发:使用更多控件并为控件添加消息处理函数)VS2010/MFC编程入门之前言鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。
实验一 VS2010开发环境及C#基本编程
实验一VS2010开发环境及C#基本编程1.1 C#集成环境使用一、实验目的1.熟悉Visual C#.NET集成开发环境。
2.掌握控制台应用程序的开发方法。
3.掌握Windows应用程序的开发方法。
二、实验要求1. 整理上机步骤,总结经验和体会。
2. 完成实验日志和上交程序。
三、实验内容题目一:创建控制台应用程序(1)选择“开始”“程序”“Microsoft Visual Studio 2010”“Microsoft Visual Studio 2010”命令,启动Visual Studio 2010,并仔细观察起始页的内容。
(2)选择“文件”“新建”“项目”命令,弹出“新建项目”对话框。
仔细观察对话框的内容。
在“项目类型”列表框中选中Visual C#选项;在“模板”列表框中选中“控制台应用程序”选项;在“名称”文本框中输入项目名称;在“位置”文本框中输入或选择项目的保存位置。
单击“确定”按钮,将显示控制台应用程序代码编辑窗口,在该窗口内显示系统自动生成的相应代码。
仔细观察并分析这些代码。
(3)在代码编辑窗口内的Main()方法中添加如下代码:Console.Write("当前系统的日期为:");//将系统的日期转换为长日期字符串表示形式进行输出Console.WriteLine(DateTime.Now.ToLongDateString());Console.Read();(4)选择“文件”“全部保存”命令,保存项目。
(5)选择“调试”“开始执行(不调试)”命令或按【Ctrl+F5】组合键运行程序,并观察运行情况。
(6)在项目的保存位置处查看项目中过的所有文件。
题目二:创建Windows应用程序(1)从开始菜单启动Visual Studio 2010。
(2)选择“文件”“新建”“项目”命令,弹出“新建项目”对话框。
在“项目类型”列表框中选中Visual C#选项;在“模板”列表框中选中“Windows应用程序”选项;在“名称”文本框中输入项目名称;在“位置”文本框中输入或选择项目的保存位置。
在visual_studio_2010中新建C或者C++程序(完全图解教程)_IT168文库
Visual Studio C++2010使用教程
Visual Studio IDE 简介(C++)Visual Studio 集成开发环境(IDE) 提供了一组工具,可帮助您编写和修改代码,以及检测和更正错误。
在这些主题中,您将创建一个新的标准C++ 程序,并使用Visual Studio 为C++ 开发人员提供的功能测试该程序的功能。
您创建的简单程序将跟踪有多少个玩家正在玩各种纸牌游戏。
本演练涵盖以下内容:∙演练:使用项目和解决方案(C++)∙演练:生成项目(C++)∙演练:测试项目(C++)∙演练:调试项目(C++)∙演练:部署程序(C++)演练:使用项目和解决方案(C++)在Visual Studio 中,可以将您的工作组织为项目和解决方案。
一个解决方案可以包含多个项目,例如,一个DLL 和一个引用该DLL 的可执行文件。
有关更多信息,请参见介绍解决方案、项目和项。
此演练演示如何创建项目,使用“解决方案资源管理器”向项目中添加文件,在文件中键入代码,然后生成项目。
创建项目在使用Visual Studio 编写Visual C++ 程序的过程中,第一个任务是选择项目的类型。
对于每种项目类型,Visual Studio 都为您设置编译器设置并生成起始代码。
在此演练中的项目中,您将创建一个基本程序,该程序跟踪有多少个玩家正在玩不同的纸牌游戏。
创建项目1.在“文件”菜单上指向“新建”,再单击“项目”。
2.在“项目类型”区域中,单击“Visual C++”。
然后,在“Visual Studio 已安装的模板”窗格中,单击“Win32 控制台应用程序”。
3.键入项目名称。
对于此示例,请键入game。
当您创建项目时,Visual Studio 会将该项目放入一个解决方案。
默认情况下,解决方案的名称与项目名称相同。
接受该名称。
您可以接受默认位置、键入一个不同的位置或者浏览到要保存项目的目录。
单击“确定”启动“Win32 应用程序向导”。
4.在“Win32 应用程序向导”的“概述”页上,单击“下一步”。
VS2010-MFC编程入门
VS2010/MFC编程入门之前言鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。
但是教程中讲的例子只是一个个简单的例程,并没有可视化窗口。
鸡啄米在这套VS2010/MFC编程入门教程中将会给大家讲解怎样使用VS2010进行可视化编程,也就是基于窗口的程序。
C++编程入门系列主要偏重于理论方面的知识,目的是让大家打好底子,练好内功,在使用VC++编程时不至于丈二和尚摸不着头脑。
本套教程也会涉及到VC++的原理性的东西,同样更重视实用性,让大家学完本套教程以后,基本的界面程序都能很容易编写出来。
VC++简介VC++全称是Visual C++,是由微软提供的C++开发工具,它与C++的根本区别就在于,C++是语言,而VC++是用C++语言编写程序的工具平台。
VC++不仅是一个编译器更是一个集成开发环境,包括编辑器、调试器和编译器等,一般它包含在Visual Studio中。
Visual Studio包含了VB、VC++、C#等编译环境。
当然我们在使用VC++ 6.0的时候为了轻便,总是只单独安装VC++ 6.0。
但自微软2002年发布Visual 以来,微软建立了在.NET框架上的代码托管机制,一个项目可以支持多种语言开发的组件,VC++同样被扩展为支持代码托管机制的开发环境,所以.NET Framework是必须的,也就不再有VC++的独立安装程序,不过可以在安装Visual Studio时只选择VC++进行安装。
VC++版本的选择:VS2010因为VC++ 6.0以后的版本不再有独立的安装程序,所以鸡啄米在教程中将不会称VC++ 6.0以后的版本为VC++ 7.0等等,而是用VC++所属的Visual Studio的版本名称代替,比如VS2003。
近些年VC++主要的版本包括:VC++ 6.0、VS2003、VS2005、VS2008和VS2010。
VS2010和MFC编程入门之48(字体和文本输出:文本输出)
VS2010MFC编程入门之四十八(字体和文本输出:文本输出)理解了CFont字体类,这里主要讲解文本输出的方法和实例。
文本输出过程在文本输出到设备以前,我们需要确定字体、字体颜色和输出的文本内容等信息。
Windows窗口的客户区由应用程序管理,所以我们还要在应用程序中控制输出文本的格式,例如后续字符的位置、换行等格式。
由此,文本的输出过程大致包括确定字体信息、格式化文本和执行输出操作三个步骤。
下面分别讲解。
1、确定字体信息文本在输出以前应该先确定字体信息,或者是当前正在使用的字体,或者是自定义的字体,之后就可以根据确定的字体来显示文本或者利用字体信息来设定文本的格式了,例如,我们可以根据当前字体的字符高度来确定下一行字符在什么位置输出。
自定义字体可以通过CFont类的创建字体的几个成员函数完成。
获取当前选择字体的信息可以使用API函数GetTextMetrics实现,此函数的原型如下:BOOL GetTextMetrics(__in HDC hdc,__out LPTEXTMETRIC lptm);参数hdc为设备上下文的句柄;参数lptm是指向TEXTMETRIC结构体变量的指针,此结构体变量用于接收字体信息。
TEXTMETRIC结构体的定义如下:C++代码typedefstructtagTEXTMETRIC {LONG tmHeight; // 字符高度LONG tmAscent; // 字符基线以上的高度LONG tmDescent; // 字符基线以下的高度LONG tmInternalLeading; // 由tmHeight成员指定的字符高度顶部的空间LONG tmExternalLeading; // 行间距LONG tmAveCharWidth; // 字符的平均宽度LONG tmMaxCharWidth; // 字符的最大宽度LONG tmWeight; // 字符的粗度LONG tmOverhang; // 合成字体间附加的宽度LONG tmDigitizedAspectX; // 为输出设备设计的x轴尺寸LONG tmDigitizedAspectY; // 为输出设备设计的y轴尺寸TCHAR tmFirstChar; // 字体中第一个字符值TCHAR tmLastChar; // 字体中最后一个字符值TCHAR tmDefaultChar; // 替换字体中没有的字符TCHAR tmBreakChar; // 作为分隔符的字符BYTE tmItalic; // 非0则表示字体为斜体BYTE tmUnderlined; // 非0则表示字体有下划线BYTE tmStruckOut; // 非0则表示字符带有删除线BYTE tmPitchAndFamily;// 字体间距和字体族BYTE tmCharSet; // 字符集} TEXTMETRIC, *PTEXTMETRIC;2、格式化文本格式化文本一般包括两种,一种是确定文本行中后续文本的位置,另一种是确定换行时下一行文本的位置。
VS2010MFC 入门编程七(基于MSCOMM32.OCX控件的串口编程)
VS2010MFC 入门编程七(基于MSCOMM32.OCX控件的串口编程)值得注意的是第一种方法的发送方式是发送不了0X00的,第二种方法中解决啦0x 00不能发送的问题;建立基于对话框的MFC工程,命名为“CommTest”,应用程序选择”基于对话框“建立好工程如下图所示:删除默认的按钮以及静态文本框,添加如下对话框控件:A:打开串口控件,工具栏中拖一个botton 到diadlg 上,并修改Caption 为”打开串口“,修改ID 为IDC_BOTTON_OPENB:关闭串口控件,工具栏中拖一个botton 到diadlg 上,并修改Caption 为”关闭串口“,修改ID 为IDC_BOTTON_CLOSEC:发送控件,工具栏中拖一个botton 到diadlg 上,并修改Caption 为”发送“,修改ID 为IDC_BOTTON_SENDD:发送编辑框和接受编辑框添加通信串口控件,在对话框上右键在对话框右下角电话样子的就是串口通信控件给控件添加变量在电话图标上右击:命名如图示,点击完成在工程中会自动生成mscomm.h 和mscomm.cpp两个文件;给两个编辑框添加成员变量添加三个按钮的事件直接双击三个按钮会在程序中自动添加如下函数[cpp] view plaincopyprint?voidCCommTestDlg::OnBnClickedButtonSend() { // TODO: 在此添加控件通知处理程序代码}[cpp] view plaincopyprint?voidCCommTestDlg::OnBnClickedButtonOpen() { // TODO: 在此添加控件通知处理程序代码}[cpp] view plaincopyprint?voidCCommTestDlg::OnBnClickedButtonClose() { // TODO: 在此添加控件通知处理程序代码}添加控件事件处理函数:点击添加编辑即可,在CommTestDlg.cpp中会生成函数:[cpp] view plaincopyprint?voidCCommTestDlg::OnCommMscomm1() { // TODO: 在此处添加消息处理程序代码}数据接收都是从这个函数处理打开串口函数实现:[cpp] view plaincopyprint?voidCCommTestDlg::OnBnClickedButtonOpen() { // TODO: 在此添加控件通知处理程序代码if(m_mscomm.get_PortOpen()){ m_mscomm.put_PortOpen(FALSE);} m_mscomm.put_CommPort(3); //选择COM3m_mscomm.put_InBufferSize(1024); //接收缓冲区m_mscomm.put_OutBufferSize(1024);//发送缓冲区m_mscomm.put_InputLen(0);//设置当前接收区数据长度为0,表示全部读取m_mscomm.put_InputMode(1);//以二进制方式读写数据m_mscomm.put_RThreshold(1);//接收缓冲区有1个及1个以上字符时,将引发接收数据的OnCommm_mscomm.put_Settings(_T("9600,n,8,1"));//波特率9600无检验位,8个数据位,1个停止位if(!m_mscomm.get_PortOpen())//如果串口没有打开则打开{ m_mscomm.put_PortOpen(TRUE);//打开串口AfxMessageBox(_T("串口3打开成功")); } else{ m_mscomm.put_OutBufferCount(0); AfxMessageBox(_T("串口3打开失败")); } } 关闭按钮实现:[cpp] view plaincopyprint?voidCCommTestDlg::OnBnClickedButtonClose() { // TODO: 在此添加控件通知处理程序代码m_mscomm.put_PortOpen(FALSE);//关闭串口AfxMessageBox(_T("串口 3 已关闭")); } 发送代码实现:[cpp] view plaincopyprint?voidCCommTestDlg::OnBnClickedButtonSend() { //TODO: 在此添加控件通知处理程序代码UpdateData(true); //读取编辑框内容m_mscomm.put_Output(COleVariant(m_EditSend));//发送数据m_EditSend.Empty(); //发送后清空输入框UpdateData(false); //更新编辑框内容} 接受数据实现:[cpp] view plaincopyprint?voidCCommTestDlg::OnCommMscomm1() { // TODO: 在此处添加消息处理程序代码static unsigned int cnt=0; VARIANT variant_inp; COleSafeArray safearray_inp; long len,k; unsigned intdata[1024]={0}; byte rxdata[1024]; //设置BYTE 数组CString strtemp;if(m_mscomm.get_CommEvent()==2) //值为2 表示接收缓冲区内有字符{ cnt++;variant_inp=m_mscomm.get_Input(); //读缓冲区消息safearray_inp=variant_inp; ///变量转换len=safearray_inp.GetOneDimSize(); //得到有效的数据长度for(k=0;k<len;k++){ safearray_inp.GetElement(&k,rxdata +k); } for(k=0;k<len;k++) //将数组转换为CString 型变量{ strtemp.Format(_T("%c"),*(rxdata+k));m_EditReceive+=strtemp; CStringtemp=_T("\r\n"); //换行m_EditReceive+=temp; } }UpdateData(FALSE); //更新编辑框内容} //接收到的数据存放在//byte 型数组rxdata[1024]中,再进行进一步处理,此处只是//以16 进制显示出来//说明(自己的理解):上面是基于事件驱动型的串口通信方式,感觉事件驱动与中断类似,但//绝对不是中断,每一次响应事件的时候接收缓冲区的数据的长度不是固定的。
如何使用VS2010开发环境编写C程序
第2章 Visual C++ 2010上机指南2.1 Visual C++ 2010概述Visual Studio 是微软公司推出的目前流行的Windows 平台应用程序开发环境。
Visual Studio 2010同时带来了 NET Framework 4.0、除了Microsoft SQL Server ,它还支持 IBM DB2和Oracle 数据库。
Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和 Office 插件。
Visual C++ 2010 是Visual Studio 2010其中的一个模块 Visual C++ 2010是微软公司推出 的目前使用极为广泛的基于Windows 平台的可视化集成开发环境(IDE )。
包含了文本编辑器、资源编辑器、工程编译器、源代码浏览器、集成调试等工具以及一套联机文档。
使用Visual C++ 2010,可以完成创建、调试、修改C++应用程序等各种操作。
Visual C++ 2010提供面向对象技术的支持,它能够帮助使用MFC 库的用户自动生成一个具有图形界面的应用程序框架。
用户只需在该框架的适当部分添加、扩充代码就可以得到一个满意的应用程序。
Visual C++ 2010也作为C 语言程序的常用的应用开发环境之一,C 语言是C++的子集,C++是在C 语言的基础上进行的扩展,C++已经包含了C 语言的所有内容,Visual C++ 2010 只有创建C++文件的选项,没有创建C 语言文件的选项。
但是这并不影响使用,我们在填写源文件名称时把后缀改为.c 即可,编译器会根据源文件的后缀来判断代码的种类。
如果使用Visual C++ 2010编写大型的C 语言应用程序,一般采用层次文件结构,如图2-1所示。
图2-1 C 语言应用程序文件结构其中.sln 这种类型的文件在Visual C++2010中是级别最高的,称为解决方案(Solution )文件 ,一般与一个具体的应用系统相对应。
vc++(vs2010) windows编程与绘图程序设计
1 Vc++2010开发平台概述 (3)1.1Vc++2010概述 (3)1.2 Visual Studio 2010 集成开发环境 (3)1.2.1安装Visual Studio 2010 (3)1.2.2配置Visual Studio 2010 (3)1.2.3解决方案和项目 (3)1.2.4生成和调试工具 (3)1.2.5部署工具 (3)1.2.6 Ribbon界面设计可视化 (4)2 Visual Studio 2010 MFC基本程序设计 (4)2.1 MFC应用程序概述 (4)2.1.1简单的MFC应用程序 (4)2.1.2 MFC应用程序分析 (4)2.2 MFC应用程序的创建 (4)2.2.1 用AppWizard创建CLR控制台应用程序 (4)2.2.2 用AppWizard创建win32控制台应用程序 (4)2.2.3 用AppWizard创建一个MFC应用程序 (5)2.3 MFC的类 (9)2.3.1 MFC应用程序中包含的类 (9)2.3.2 应用程序类 (10)2.3.3 主框架类 (10)2.3.4 视图类 (10)2.3.5 文档类 (10)2.3.6 对话框类 (10)2.3.7 菜单类 (10)2.3.8 线程基类 (10)3 Wndows窗体应用程序 (11)3.1 创建Wndows窗体应用程序 (11)3.2 窗体属性及设置 (12)3.3 窗体事件及处理 (13)3.4 窗体控件添加与编辑 (13)4 用户界面设计 (13)4.1 菜单设计 (13)4.1.1 菜单的类型 (13)4.1.2 菜单设计 (13)4.1.3 创建弹出式菜单 (20)4.1.4 创建动态菜单 (20)4.1.5 创建基于对话框的菜单 (20)4.2 工具栏设计 (20)4.3 状态栏设计 (20)5 对话框设计 (20)5.1 静态对话框 (20)5.1.1静态对话框的建立过程 (20)5.1.2静态对话框的应用 (21)5.2 非静态对话框 (31)5.3 通用对话框 (31)6常用控件 (31)6.1 公共控件 (31)6.2 容器 (31)6.3 数据控件 (31)7 键盘鼠标事件 (32)7.1键盘事件 (32)7.2 鼠标事件 (42)7.2.1客户区鼠标消息 (42)7.2.2非客户区鼠标消息 (45)7.2.3实例 (46)8 图形文本与图像处理 (51)8.1图形设备接口GDI(Graphics Device Interface) (51)8.2 设备上下文DC(device context) (54)8.2.1 设备上下文概述 (54)8.2.2 CDC类 (57)8.3 绘图环境 (60)8.3.1绘图环境介绍 (60)8.3.2映射模式与坐标系 (61)8.3.3绘图颜色 (71)8.3.4设置绘图属性 (72)8.3.6几何对象的结构和类 (79)8.4 画笔和画刷 (85)8.4.1画笔 (85)8.4.2画刷 (92)8.5 绘图 (99)8.5.1 绘图步骤 (99)8.5.2 画像素点 (100)8.5.3 画线状图 (100)8.5.4 拖放画动态直线 (105)8.5.5 画填充图 (109)8.5.6 清屏 (111)8.5.7 在控件上绘图 (112)8.6 文本绘制 (116)8.7 位图 (116)8.8 图标和光标 (116)8.9 图像处理 (116)9 文件处理 (116)10 数据库编程 (117)1 Vc++2010开发平台概述1.1Vc++2010概述1.2 Visual Studio 2010 集成开发环境1.2.1安装Visual Studio 20101.2.2配置Visual Studio 20101.2.3解决方案和项目1.2.4生成和调试工具1.2.5部署工具1.2.6 Ribbon界面设计可视化2 Visual Studio 2010 MFC基本程序设计2.1 MFC应用程序概述2.1.1简单的MFC应用程序2.1.2 MFC应用程序分析2.2 MFC应用程序的创建2.2.1 用AppWizard创建CLR控制台应用程序2.2.2 用AppWizard创建win32控制台应用程序2.2.3 用AppWizard创建一个MFC应用程序1.打开vc++2010,从起始页中选择“新建项目”如图2.2.3.1。
VS2010-MFC编程入门(续)
VS2010/MFC编程入门之三十八(状态栏的使用详解)上一节中鸡啄米讲了工具栏的创建、停靠与使用,本节来讲解状态栏的知识。
状态栏简介状态栏相信大家在很多窗口中都能见到,它总是用来显示各种状态。
状态栏实际上也是一个窗口,一般分为几个窗格,每个窗格分别用来显示不同的信息和状态等,如菜单项和工具栏按钮的提示信息。
用MFC向导生成的单文档或多文档程序都会自动创建状态栏,大家可以运行下VS20 10/MFC编程入门之三十四(菜单:VS2010菜单资源详解)中创建的Example34程序,在结果界面中可以看到窗口底部有个状态栏,该状态栏被分为了几个窗格,分别用来显示菜单项和工具栏按钮的提示信息及Caps Lock、Num Lock、Scroll Lock键的状态。
当然,我们可以自定义状态栏,加入新的提示信息或指示器。
CStatusBar类MFC为状态栏提供了CStatusBar类,封装了状态栏的属性和操作。
下面是CStatusBar类几个主要的成员函数:virtual BOOL Create(CWnd* pParentWnd, DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_BOTTOM, UINT nID = AFX_IDW_STATUS_BAR);创建一个状态栏。
参数pParentWnd为状态栏父窗口的指针,参数dwStyle为状态栏的风格,除了标准的Windows风格外,它还支持:CBRS_TOP:位于框架窗口的顶部。
CBRS_BOTTOM:位于框架窗口的底部。
CBRS_NOALIGN:父窗口大小改变时状态栏不会被重新定位。
参数nID指定状态栏的ID。
BOOL SetIndicators(const UINT* lpIDArray, int nIDCount);为每个指示器设置显示文本,具体来说,就是用lpIDArray数组中的对应元素为每个指示器设置一个ID,然后加载每个ID代表的字符串,设置为这些指示器的显示文本。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章:关于Visual Studio、VC和C++的那些事
首先,这三个东西有什么区别呢?VC和C++是相同的吗,有什么区别呢?我刚开始学C++的时候也有这样的问题,在这里我来替大家解释一下他们到底是什么。
Visual Studio,我们一般都简称为VS,VC全称是Visual C++,C++就
不用解释了吧?Visual Studio其实是微软开发的一套工具集,它由各种各样的工具组成,这就好像Office 2007是由Word 2007、Excel 2007、Access 2007
等等组成的一个道理。
其中Visual C++就是Visual Studio的一个重要的组成
部分。
Visual Studio可以用于生成Web应用程序,也可以生成桌面应用程序,在Visual Studio下面,除了VC,还有Visual C#,Visual Basic,过去还有Visual J#,现在还有Visual F#等等组件工具,使用这些工具你可以使用C++
语言、C#语言或者Basic语言(微软改进版)进行开发。
这就好比桌上放着刀、叉、筷子,你可以用它们来吃饭,无论你用什么工具都可以,因为它们都是餐具的一种。
VC,全称是Visual C++,它只是一个工具而已。
C++是一门和C、Basic、C#、Java一个概念的东西,它是一门语言,这个概念就同汉语、英语、法语之间的关系一样。
语言的可以不同,他们有的复杂有的精简,比如汉语,我个人认为这是这个星球上最复杂的语言;又比如电影《阿凡达》中外星人使用的语言,不过100都个单词而已。
当然,语言并没有高低贵贱之分,而对语言掌握的好不好,说的好不好是有高下之别的。
一个语言都有哪些要素呢?语法就是其中一个重要的方面,比如你要对你所喜欢的人表达爱慕之情,那么你应该说“我爱你”,你不能说“你爱我”,因为这搞错了主谓宾关系,因此我们通常都需要按照一定的规矩和原则表达才会让别人正确理解我们真正的含义。
在我们的汉语中有一些成语,它们通常都比较简单短小,但是却能表达非常强烈的感情,而且效果非常好。
比如你想骂一个坏人“你实在是太变态了,这种事情都干得出来。
”你可以这样说:“你也太禽兽不如了!”对于编程的语言来说,其实也是有成语的,在我看来,这就是库函数。
通常我们在编程的时候都推荐选择库函数,因为它通常会比较快一些。
一直以来都有不少人混淆Visual C++和Visual Studio,其实最初Visual C++发布的时候还没有Visual Studio这个东西,Visual C++是一个独立的开发工具,与Visual Basic等并列,最后微软将它们整合在一起组成了Visual Studio。
Visual C++从发布起到现在已经有10个大版本了,我们这里介绍的Visual C++ 2010就是Visual C++ 10,简称VC10。
上朔10多年,Visual C++ 6.0发布了,这个被称为史上最经典的VC,现在有很多企业还在用它,大量的教材
基于这个版本的VC来写的。
然而实际上VC6并没有想象中的那么美好,孱弱的IDE,不完善的STL等等让它越来越不适应时代的发展,同时由于后来的版本和它的差别越来越大,让很多习惯于VC6教材的人在新版本上无所适从。
VC6走
向历史的终结点其实是必然的,只在于时间问题罢了,况且大部分人都有追求最新的“嗜好”,所以这里也选择最新版的VC来做入门教程。
下面来介绍下这个VC版本和VS版本的对应关系:
Visual Studio .net (2002) --> Visual C++ .net (2002) --> Visual C++ 7.0 -> _MSC_VER值1300
这个是微软推出.net战略之后的最早的一个版本的VC,这个版本相对VC6来说变化并不是很大,一些不标准的语法依然得到支持,不过IDE界面已经出现了VS时代的雏形。
Visual Stuido .net 2003 -> Visual C++ .net 2003 -> Visual C++ 7.1 -> _MSC_VER值1310
这个版本我觉得只能算是一个对.net 2002的一个Patch版本,解决了一些Bug,不规范的语法依然得到支持,比如for循环变量作用域的问题。
Visual Studio 2005 -> Visual C++ 2005 -> Visual C++ 8.0 -> _MSC_VER 1400
这个版本算是一个比较符合C++标准的VC版本了,微软为这个版本的VC 加入了大量的增强版的C库函数(CRT函数),如strcpy_s之类,当然,这部分并不是C和C++标准所要求的。
Visual Studio 2008 -> Visual C++ 2008 -> Visual C++ 9.0 -> _MSC_VER 1500
这个版本应该是在Vista发布之后出的,如果你是在Vista或者Win7下面使用,那么应该选择这个版本。
这个版本与VC2005变化并不大,不过它的SP1为C++带来一些新的STL库组件(tr1部分),以及MFC下面的Ribbon界面。
Visual Studio 2010 -> Visual C++ 2010 -> Visual C++ 10.0 -> _MSC_VER 值1600.
第二章安装、配置和首次使用VS2010
下面通过开始菜单来启动VS2010吧:
如果你是第一次开始,那么可能会让你选择默认的环境设置,我们要使用VC当然选择VC的配置:
出现下面的画面表示已经成功安装和运行了。
这是起始页面,以后你会经常见到它。
注意,你可能会没有VAssistX这个菜单,因为这个是个外部工具,以后会给大家解释它的用处,现在暂时忽略。
接下来让我们来做一些常见的设置。
通过菜单工具》选项调出配置对话框,下面是一些常见的设置:
调处行号,选择文本编辑器,所有语言,把行号打成勾。
如果你想调整字体或者颜色,那么可以在这里选择:
单击工具栏的空白区域,让我们把生成工具栏调出来:
这样我们就可以直接在工具栏上面选择编译项目、编译整个解决方案、运行程序和调试程序了。
选择生成工具栏旁边的小三角形可以自定,我们还可以添加一些按钮:
单击自定义界面下面的添加按钮就可以添加新的按钮了,现在我们把开始执行(不调试)添加工具栏中:
以前经常有人问我为什么我的程序闪一下就没了,这就是因为它们把调试(F5,那个实心的三角形)当成了运行(不调试,Ctrl+F5,空心带尾巴的三角形)了。
当然是一闪而过啦。
关于调试以后说到。
HelloWorld.
下面让我们用VC++ 2010也就是VC10来做一个控制台的HelloWorld 程序吧。
VC2010里面不能单独编译一个.cpp或者一个.c文件,这些文件必须依赖于某一个项目,因此我们必须创建一个项目。
有很多种方法都可以创建项目,可以通过菜单:文件,新建,项目;也可以通过工具栏点击新建项目进行创建。
这里我们点击起始页面上面的新建项目:
点击之后进入新建项目向导:
上面选择Win32控制台应用程序,名称中输入HelloWorld点确定,至于是否为解决方案创建目录我们暂时不管,那主要区别在于解决方案是否和项目文件在同一目录。
接下来进入创建页面,在Win32应用程序向导的第一个页面直接点下一步即可:
下个页面记得选择空项目,我们不需要预编译头:
点击完成。
这时候一个空的项目编译成功了,我们不妨编译一些试试。
点击刚才添加的生成工具栏的生成按钮:
这时候我们会遇到编译错误,为什么呢?因为我们还没有Main函数,对于一个C++项目来说,一定要有一个且仅有一个main函数(Windows程序需要WinMain,区别以后再讲),可以是隐式提供也可以是显式提供,至于区别以后会讲到。
现在让我们记住这个错误,以后遇到这个错误的时候一定要想想,我们项目中是否有Main函数。
注意这时候即使你托一个有Main函数的文件到VC10中进行编译也是没有意义的,因为那个文件并不是我们项目的一部分。
现在我们可以添加一个代码文件进来了,这个代码文件可以是已经存在的也可以是新建的,这里新建一个。
右键单击项目名称,选择添加,新建项:
在向导中选择代码、C++文件(.cpp),名称输入Main,确定。
这时候已经成功添加了一个Main文件,注意添加新文件的时候要防止重名:
然后我们输入最简单的几行代码,然后编译它吧,编译方法和上面一样。
如果编译成功你会看到上面的画面,如果失败会有错误提示,那么
你可以根据提示去修改项目配置或者代码。
然后让我们用Ctrl+F5或者点那个空心三角形运行一下吧:
OK了,接下来你可以通过更改这个程序去练习C++教材上面的程序了。
这一章的内容就是这么多了,下一章中我们将讨论以下内容:什么是C++?什么是编程等等。