• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C语言 > C++入门概览和尝试创建第一个C++程序

C++入门概览和尝试创建第一个C++程序

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了c++程序设计,c++程序设计教程,c++程序设计语言,c++程序,c++程序实例等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

C++程序的构成和书写形式
1) 一个C++程序可以由一个程序单位或多个程序单位构成。每一个程序单位作为一个文件。在程序编译时,编译系统分别对各个文件进行编译,因此,一个文件是一个编译单元。

2) 在一个程序单位中,可以包括以下几个部分:
预处理命令。上节4个程序中都包括#include命令。
全局声明部分(在函数外的声明部分)。在这部分中包括对用户自己定义的数据类型的声明和程序中所用到的变量的定义。
函数。函数是实现操作的部分,因此函数是程序中必须有的和最基本的组成部分。每一个程序必须包括一个或多个函数,其中必须有一个(而且只能有一个)主函数(main函数)。

但是并不要求每一个程序文件都必须具有以上3个部分,可以缺少某些部分(包括函数)。

3) 一个函数由两部分组成:
函数首部,即函数的第一行。包括函数名、函数类型、函数属性、函数参数(形参)名、参数类型。注:一个函数名后面必须跟一对圆括号, 函数参数可以缺省,如int main( )。
函数体,即函数首部下面的大括号内的部分。如果在一个函数中有多个大括号,则最外层的一对{ }为函数体的范围。

函数体一般包括:
局部声明部分 (在函数内的声明部分)。包括对本函数中所用到的类型、函数的声明和变量的定义。注:对数据的声明既可以放在函数之外(其作用范围是全局的),也可以放在函数内(其作用范围是局部的,只在本函数内有效)。
执行部分。由若干个执行语句组成,用来进行有关的操作,以实现函数的功能。

4) 语句包括两类:一类是声明语句,另一类是执行语句。 C++对每一种语句赋予一种特定的功能。语句是实现操作的基本成分,显然,没有语句的函数是没有意义的。C++语句必须以分号结束。

5) 一个C++程序总是从main函数开始执行的,而不论main函数在整个程序中的位置如何。

6) 类(class)是C++新增加的重要的数据类型,是C++对C的最重要的发展。有了类,就可以实现面向对象程序设计方法中的封装、信息隐蔽、继承、派生、多态等功能。在一个类中可以包括数据成员和成员函数,他们可以被指定为私有的(private)和公用的(public)属性。私有的数据成员和成员函数只能被本类的成员函数所调用。

7) C++程序书写格式自由,一行内可以写几个语句, 一个语句可以分写在多行上。C++程序没有行号,也不像FORTRAN或COBOL那样严格规定书写格式(语句必须从某一列开始书写)。

8) 一个好的、有使用价值的源程序都应当加上必要的注释,以增加程序的可读性。C++还保留了C语言的注释形式,可以用“/*……*/”对C++程序中的任何部分作注释。在“/*”和“*/”之间的全部内容作为注释。
用“//”作注释时,有效范围只有一行,即本行有效,不能跨行。而用“/*……*/”作注释时有效范围为多行。只要在开始处有一个“/*”,在最后一行结束处有一个“*/”即可。因此,一般习惯是: 内容较少的简单注释常用“//”,内容较长的常用“/*……*/ ”。

第一个C++程序
例1

#include <iostream> //包含头文件iostream
using namespace std; //使用命名空间std
int main( )
{
  cout<<"This is a C++ program.";
  return 0;
}
</div>

在运行时会在屏幕上输出以下一行信息:

This is a C++ program.
</div>

用main代表“主函数”的名字。每一个C++程序都必须有一个 main 函数。main前面的int的作用是声明函数的类型为整型。程序第6行的作用是向操作系统返回一个零值。如果程序不能正常执行,则会自动向操作系统返回一个非零值,一般为-1。

函数体是由大括号{  }括起来的。本例中主函数内只有一个以cout开头的语句。注意C++所有语句最后都应当有一个分号。

再看程序的第1行“#include <iostream>”,这不是C++的语句,而是C++的一个预处理命令,它以“#”开头以与C++语句相区别,行的末尾没有分号。#include <iostream>是一个“包含命令”,它的作用是将文件iostream的内容包含到该命令所在的程序文件中,代替该命令行。文件iostream的作用是向程序提供输入或输出时所需要的一些信息。iostream是i-o-stream 3个词的组合,从它的形式就可以知道它代表“输入输出流”的意思,由于这类文件都放在程序单元的开头,所以称为“头文件”(head file)。在程序进行编译时,先对所有的预处理命令进行处理,将头文件的具体内容代替 #include命令行,然后再对该程序单元进行整体编译。

程序的第2行“using namespace std; ” 的意思是“使用命名空间std”。C++标准库中的类和函数是在命名空间std中声明的,因此程序中如果需要用到C++标准库(此时就需要用#include命令行),就需要用“using namespace std; ”作声明,表示要用到命名空间std中的内容。

在初学C++时,对本程序中的第1, 2行可以不必深究,只需知道:如果程序有输入或输出时,必须使用“#include <iostream>”命令以提供必要的信息,同时要用“using namespace std;” ,使程序能够使用这些信息,否则程序编译时将出错。

例2
求a和b两个数之和。可以写出以下程序:

// 求两数之和 (本行是注释行)
#include <iostream> //预处理命令
using namespace std; //使用命名空间std
int main( ) //主函数首部
{ //函数体开始
  int a, b, sum; //定义变量
  cin>>a>>b; //输入语句
  sum=a+b; //赋值语句
  cout<<"a+b="<<sum<<endl; //输出语句
  return 0; //如程序正常结束,向操作系统返回一个零值
} //函数结束
</div>

本程序的作用是求两个整数a和b之和sum。第1行“//求两数之和”是一个注释行,C++规定在一行中如果出现“//”,则从它开始到本行末尾之间的全部内容都作为注释。

如果在运行时从键盘输入

  123 456↙
</div>

则输出为

  a+b=579
</div>

例3
给两个数x和y,求两数中的大者。在本例中包含两个函数。

#include <iostream> //预处理命令
using namespace std;
int max(int x,int y) //定义max函数,函数值为整型,形式参数x,y为整型
{ //max函数体开始
  int z; //变量声明,定义本函数中用到的变量z为整型
  if(x>y)
   z=x; //if语句,如果x>y,则将x的值赋给z
  else z=y; //否则,将y的值赋给z
   return(z); //将z的值返回,通过max带回调用处
} //max函数结束
int main( ) //主函数
{ //主函数体开始
  int a,b,m; //变量声明
  cin>>a>>b; //输入变量a和b的值
  m=max(a,b); //调用max函数,将得到的值赋给m
  cout<<"max="<<m<<'\n'; //输出大数m的值
  return 0; //如程序正常结束,向操作系统返回一个零值
} //主函数结束
</div>

本程序包括两个函数:主函数main和被调用的函数max。程序运行情况如下:

18 25 ↙ (输入18和25给a和b)
max=25 (输出m的值)
</div>

注意输入的两个数据间用一个或多个空格间隔,不能以逗号或其他符号间隔。

在上面的程序中,max函数出现在main函数之前,因此在main函数中调用max函数时,编译系统能识别max是已定义的函数名。如果把两个函数的位置对换一下,即先写main函数,后写max函数,这时在编译main函数遇到max时,编译系统无法知道max代表什么含义,因而无法编译,按出错处理。

为了解决这个问题,在主函数中需要对被调用函数作声明。上面的程序可以改写如下:

#include <iostream>
using namespace std;
int main( )
{
  int max(int x,int y); //对max函数作声明
  int a,b,c;
  cin>>a>>b;
  c=max(a,b); //调用max函数
  cout<<"max="<<c<<endl;
  return 0;
}
int max(int x,int y) //定义max函数
{
  int z;
  if(x>y) z=x;
  else z=y;
  return(z);
}
</div>

只要在被调用函数的首部的末尾加一个分号,就成为对该函数的函数声明。函数声明的位置应当在函数调用之前。

下面举一个包含类(class)和对象(object)的C++程序,目的是使读者初步了解C++是怎样体现面向对象程序设计方法的。

例4
包含类的C++程序。

#include <iostream>// 预处理命令
using namespace std;
class Student// 声明一个类,类名为Student
{
  private: // 以下为类中的私有部分
  int num; // 私有变量num
  int score; // 私有变量score
  public: // 以下为类中的公用部分
  void setdata( ) // 定义公用函数setdata
  {
   cin>>num; // 输入num的值
   cin>>score; // 输入score的值
  }
  void display( ) // 定义公用函数display
  {
   cout<<"num="<<num<<endl; // 输出num的值
   c



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • c++ 端口扫描程序实现案例
  • C++ 将文件数据一次性加载进内存实例代码
  • C++语言数据结构 串的基本操作实例代码
  • C++中实现把表的数据导出到EXCEL并打印实例代码
  • C++程序设计-五子棋
  • C++语言实现hash表详解及实例代码
  • C++语言 STL容器list总结
  • VC++实现文件与应用程序关联的方法(注册表修改)
  • C/C++程序编译流程详解
  • C++基础学生管理系统

相关文章

  • 2017-05-28在C语言编程中使用变量的基础教程
  • 2017-05-28C++多线程编程时的数据保护
  • 2017-05-28C语言中的strdup()函数和其与strcpy()函数的区别
  • 2017-05-28《C++ primer plus》读书笔记(三)
  • 2017-05-28C++空类及没有成员变量的类的大小实例分析
  • 2017-05-28解析c++中参数对象与局部对象的析构顺序的详解
  • 2017-05-28C++中strcpy函数的实现
  • 2017-05-28C语言实现修改文本文件中特定行的实现代码
  • 2017-05-28详细总结C++的排序算法
  • 2017-05-28简单讲解C语言中宏的定义与使用

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 深入分析C中不安全的sprintf与strcpy
    • C++设计模式之简单工厂模式实例
    • 解析c语言switch中break语句的具体作用
    • Linux系统中C语言编程创建函数fork()执行解析
    • 一些语言的按行读取文件的代码实现小结
    • C++ 实现2048游戏示例
    • C++运行时获取类型信息的type_info类与bad_typeid异常
    • VC创建圆角dialog的实现方法
    • Cocos2d-x UI开发之CCControlSwitch控件类使用实例
    • 链接库动态链接库详细介绍

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有