My C++(一)

来源:互联网 发布:在淘宝怎么买电棍 编辑:程序博客网 时间:2024/06/10 02:58

从C到C++

计算机诞生初期,人们要使用计算机必须用机器语言或汇编语言编写程序。世界上第一种计算机高级语言诞生于1954年,它是FORTRAN语言。先后出现了多种计算机高级语言。其中使用最广泛、影响最大的当推BASIC语言和C语言。BASIC语言是1964年在FORTRAN语言的基础上简化而成的,它是为初学者设计的小型高级语言。C语言是1972年由美国贝尔实验室的D.M.Ritchie研制成功的。它不是为初学者设计的,而是为计算机专业人员设计的。大多数系统软件和许多应用软件都是用C语言编写的。但是随着软件规模的增大,用C语言编写程序渐渐显得有些吃力了。C++是由AT&T Bell(贝尔)实验室的Bjarne Stroustrup博士及其同事于20世纪80年代初在C语言的基础上开发成功的。C++保留了C语言原有的所有优点,增加了面向对象的机制C++是由C发展而来的,与C兼容。用C语言写的程序基本上可以不加修改地用于C++。从C++的名字可以看出它是C的超集。C++既可用于面向过程的结构化程序设计,又可用于面向对象的程序设计,是一种功能强大的混合型的程序设计语言。

1、C++对C的“增强”的两个方面

  • (1) 在原来面向过程的机制基础上,对C语言的功能做了不少扩充。
  • (2) 增加了面向对象的机制。
    注:面向对象程序设计,是针对开发较大规模的程序而提出来的,目的是提高软件开发的效率。
    不要把面向对象和面向过程对立起来,面向对象和面向过程不是矛盾的,而是各有用途、互为补充的。

1.1、最简单的C++程序

#include <iostream>using namespace std;int main(){    cout << "My name is C++ \n";    return 0;}

用main代表“主函数”的名字。每一个C++程序都必须有一个 main 函数。main前面的int的作用是声明函数的类型为整型。“return 0;”作用是向操作系统返回一个零值。如果程序不能正常执行,则会自动向操作系统返回一个非零值,一般为-1。函数体是由大括号{ }括起来的。本例中主函数内只有一个以cout开头的语句。注意C++所有语句最后都应当有一个分号。再看程序的第1行“#include ”,这不是C++的语句,而是C++的一个预处理命令,它以“#”开头以与C++语句相区别,行的末尾没有分号。#include 是一个“包含命令”,它的作用是将文件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 ”命令以提供必要的信息,同时要用“using namespace std;” ,使程序能够使用这些信息,否则程序编译时将出错。

  • 简单例子(1):求a和b两个数之和。
// 求两数之和  (本行是注释行)#include <iostream>  //预处理命令using namespace std; //使用命名空间stdint main()  //主函数首部{  //函数体开始    int a, b, sum;  //定义变量    cin >> a >> b; //输入语句    sum = a + b;//赋值语句    cout << "a + b = " << sum << endl;  //输出语句    return 0;  //如程序正常结束,向操作系统返回一个零值}  //函数结束
  • 简单例子(2):给两个数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; //如程序正常结束,向操作系统返回一个零值}  //主函数结束
  • 简单例子(3):包含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的值            cout << "score =" << score << endl;//输出score的值        };}; // 类的声明结束Student stud1, stud2; //定义stud1和stud2为Student类的变量,称为对象int main()// 主函数首部{    stud1.setdata();  // 调用对象stud1的setdata函数    stud2.setdata();  // 调用对象stud2的setdata函数    stud1.display();  // 调用对象stud1的display函数    stud2.display();  // 调用对象stud2的display函数    return 0;}

参考文献:C++_面向对象程序设计(谭浩强)

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 氧化剂定义 氧化剂被还原 无色强氧化剂 氧化剂和有机过氧化物 氧化剂具有还原性 氧化剂有氧化性 氧化剂发生还原反应 氢氧化钠是氧化剂吗 常见氧化剂 臭氧是一种强氧化剂 氧化态和还原态的定义 氧化态 氧化性 氧化性强弱顺序 氧化性酸 氧化性和还原性 非氧化性酸 一氧化碳中毒性脑病 改性聚氧化乙烯 一氧化碳中毒迟发性脑病 金属离子氧化性顺序 什么是氧化性 一氧化碳中毒后迟发性脑病 碱性氧化物的通性 二氧化硫的漂白性 酸性氧化物的通性 氧化性酸和非氧化性酸的区别 非金属性是氧化性吗 金属性是氧化性还是还原性 氧化性还原性强弱顺序顺口溜 金属阳离子氧化性强弱顺序表 非氧化性杀菌剂 一氧化碳的还原性 强氧化性 什么是氧化 一氧化二氢 氧化二氢 氢氧化氢 氧化氢是什么 氢氧化铷 氢氧化铯