进入C++

开始学习C++

我们学习编程语言是从语言的本身入手,一步一步去认识每段程序所代表的含义。在国内学习编程语言,大部分的老师都是比较注重学生的基础,因此我在写这篇文章的同时也考虑到这一点。因此,本系列C++的学习专辑中主要带着大家将基础部分做好。

下面开始学习,来看一段程序:myfirst.cpp

// 我的第一个C++程序,它用于输出文字

#include <iostream>
int main()
{
    using namespace std;
    cout << "欢迎学习C++程序设计";
    cout << endl;
    cout << "我相信你一定可以学好";
    return 0;
}

main( )函数

int main()
{
    statements
    return 0;
}

这几行代码表明了有一个名字为main的函数,函数由两部分构成:函数体(statements)和return 0

在一个函数中要实现的内容,或者说要执行的指令都是放在函数体中,并且由花括号{ }包含。在main函数中的最后一句是return 0,它代表的含义是一个程序的结束,原因是当所有的执行结束之后,程序就会清除所有的数据,一切清零,因此返回0这个标记数字。

这个main函数是程序的入口函数,意思是要执行C++中的任何一条语句都必须先经过这个main,它也是作为是与操作系统之间的接口,因为所有的程序运行都离不开操作系统的调度。当main中的程序被执行时都是由操作系统调用并让CPU去执行,最后将执行的结果返回使用程序的用户,因此,才将其称为是入口函数。

C++中的注释

C++的注释是以双斜杠(//)作为开头,注释的意思是对代码做出解释说明,不过在程序的编译与运行中不会被识别。

C++的预处理器和iostream文件

预处理器指的就是在代码编译之前对源文件进行处理,用户不需要执行任何特殊的操作来调用,它在编译程序时会自动运行。

#include <iostream>

预处理器会将该指令自动添加到程序中,这就是典型的预处理器的操作。

iostream文件是什么呢?它指的是与外部沟通的必要程序,从名字来看你应该知道,它代表的是一个IO流,意思就是输入与输出。表示客户可以与计算机进行交互。

#include指令会将该iostraem文件与代码文件合并在一起,共同发送给编译器。

名称空间

using namespace std;

这个是C++中的一种特性,譬如在程序中使用cout或者endl,这些名字它都是存在于std中,便于开发者使用这些名称。

使用了using指令,开发者便可以直接使用std中的各种名字。否则使用cout会变成如下:

std::cout << "欢迎学习C++";

使用cout输出内容与endl换行

C++是如何显示消息的呢?

cout << "欢迎学习C++程序设计";

可以将cout其实是一个预定义对象,它的主要作用是显示字符串、数字和单个字符,其属性是在iostream中定义好的。<< 代表将要显示的信息传送到流中,将其展示在计算机的屏幕上。

endl的主要作用就是让计算机的显示光标跳转至下一行的开头,简单的说就是换行的意思。因为cout它是不包含换行功能的。

cout << "你一定";
cout << "可以";
cout << "学好C++";

如果是这样使用cout的话,那么它们一定是在同一行显示的。

C++语句

#include <iostream>

int main()
{
    using namespace std;
    int carrots;
    carrots = 25;
    cout << "I have ";
    cout << carrots;
    cout << "carrots";
    cout << endl;
    carrots = carrots - 1;
    cout << "now I have " << carrots << " carrots." << endl;
    return 0;
}

声明语句和变量

计算机是一种精确的、有条理的机器。要将信息存储到计算机中,必须指出信息的存储位置和需要的内存空间,利用C++的声明语句即可简单的完成操作。

int carrots;

这个语句提供了两个信息:需要的内存以及内存单元的名称。

在C++中利用int来表明数据类型为整数,它是最基本的数据类型,而carrots则表示给存储单元的名称,使用此名称来标识存储在该单元中的值。另外carrots也被称为是变量,它里面存储的值是可以被修改的

声明通常就是指出了要存储的数据类型,以及对存储在该单元中数据的名称。

赋值语句

carrots = 25;

赋值语句指的是将值赋给存储单元,上面的语句表明的就是将25赋值给carrots

=这各符号要与数学中的等于号作好区分,它仅仅代表的是赋值符号,将右边的值赋值给左边的变量。

另外赋值符号的右边除了是具体的数值外也可以是一个表达式。例如:

carrots = carrots - 1;

上述语句在赋值符号的右边就是一个表达式,它的意思是将carrots的值减去1,得到结果24,再将24赋值给carrots。

其他C++语句

#include <iostream>

int main()
{
    using namespace std;
    int carrots;

    cout << "How many carrots do you have?" << endl;
    cin >> carrots;
    cout << "Here are two more " << endl;
    carrots = carrots + 2;
    cout << "Now you have " << carrots << " carrots." << endl;
    return 0;

使用cin

cin >> carrots;

上述语句的值表明的是将键盘输入的值赋给carrots,cin的作用就是从键盘中获取输入,并将输入的结果流向carrots。

其次cincout一样它们都是智能对象,在代码的前面已经声明了carrots的数据类型,cin从键盘输入获取的值也将会转换为整型存储到carrots中。

类的简介

现在先简单对类有个了解,后面的文章中会对类做一个详细的讲解。

类是用户定义的一种数据类型,要定义一个类需要知道它可以表示什么信息和对数据执行哪些操作。类之于对象就相当于类型之于变量。

int carrots;

上面的代码中定义了一个整数类型的变量,那么这个carrots就可以执行加减乘除等操作。

总结

本文主要讲解了C++程序的组成,C++是由函数头和函数体构成,函数头指出函数的返回类型和函数期望通过参数传递给它的信息组成,C++程序是从main函数开始启动,它是程序的入口函数,缺少它是万万不可的。

最后还讲解了变量的定义声明、赋值以及cout和cin的用法。

带你开始学习C++的知识。

路漫漫其臭远兮,吾将上下而求索。

与君共勉之!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,980评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,422评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,130评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,553评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,408评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,326评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,720评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,373评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,678评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,722评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,486评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,335评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,738评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,283评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,692评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,893评论 2 335

推荐阅读更多精彩内容