分享
 
 
 

C++快速入门

王朝c/c++·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

第一篇 C++简介

目录

1、 简介

1.1、 为什么要编程?

1.2、 什么是C++和OOP?

1.3、 编程需要什么?

2、 第一个程序

2.1、运行一个C++程序

2.2、C++程序结构

2.3、注释

2.4、库

2.5、函数

2.6、流

2.7、返回

3、 数字系统

3.1、十进制

3.2、二进制

3.3、十六进制

4、 练习

4.1、练习1

4.2、练习2

4.3、练习3

5、 现在干什么?

5.1、优秀编程站点

5.2、优秀编程书籍

正文

1、 简介

1.1、 为什么要编程?

每一个人都有他自己编程的理由,但我可以告诉你编程是获取对于计算机和计算机技术深入理解的最好途径之一。学习编程可以使你懂得为什么计算机和计算机程序会以这样的方式工作。编程还会让你了解制作软件是多么的艰辛。

1. 2、什么是C++和OOP?

C++是C的一个扩充版本。C是于1978年在贝尔实验室诞生的。开发C的目的是为了创造一种可以在多种平台上使用的简单语言(比汇编和机器代码简单…)。后来在80年代早期C被扩充为C++用于创造一种面向对象的语言。O(bject,对象)O(riented,基于)P(rogramming,编程)是一种用类来构造程序的编程方式。类型标识符用以区分main函数及后继类。OOP在方法上,C++在实现上使编写极为复杂的图形应用环境(例如Windows,Macintosh…)成为可能。

1. 3、编程需要什么?

我想你需要一台计算机和一个编译器来开始你的旅途,此外你还需要一些促使你前进的催化剂——好奇心以及大量的时间。我猜(!?)你有一台电脑。在BORLAND公司的网站上你还可以找到各种各样的免费编译器(见3.1)。你有好奇心但没有好好坐下来读书的时间,那你就尽量一有时间就读书。有一本优秀的C++的书也能帮你不少忙(而且对你的眼睛也有好处)。千万要记住:任何指南、书籍、程序或者课程都不可能使你在5天之内成为程序员。只有你才能使你成为程序员。任何编译器都不可能为你写一个完整的程序。程序是你写的。

2、 第一个程序

2.1、 运行一个C++程序

一个C++程序只有在编译和链接之后才能在计算机上执行或运行。各种各样的编译器自动帮你完成这项工作。那什么是编译器?编译器是一个把C++代码翻译成机器语言的程序。机器语言是一种由0和1组成的语言,它是计算机的“母语”。一个典型的C++程序被称为源代码,相应地编译后的代码被称为目标代码。

在目标代码执行前,它必须和其他一些在程序中用到的代码(如程序中包含的库)链接。这样,编译和链接后的程序就称为可执行文件。最后,这个程序就被系统执行。执行后的输出结果在窗口中显示。

2.2、 C++程序结构

所有的C++程序都包含有指挥计算机工作的语句(命令)。下面是一个简单的C++程序范例:

/* 来自 Code.box.sk

We own you 程序 */

#include <iostream.h>

int main()

{

cout<<"We own you"; // 第一个语句

return(0); // 第二个语句

}

运行这个程序,它应该显示:

We own you

由此,一个简单的C++程序结构为:

*****************************************************

* /* 注释 : 程序的名称和目的

* 你的名字、日期等 */

*

* #include <librarynames.h>

*

* int main()

* {

* statements; // 注释

* return(0);

* }

******************************************************

下面我们将对这个结构做一个更深入的了解。

2.3、注释

注释用来向读者解释程序的内容,而计算机将忽略它们。“/*”和“*/”用于标识多行注释的开始和结束。“//”也用于注释中,“//”后所有的字符将被当作注释并忽略(一行)。绝大多数的新手会认为注释只是浪费时间。很抱歉,这种观点是错误的。注释非常重要,因为它能使你的代码被其他程序员所理解以及使得改进程序和纠错显得方便。几个月后,在你试图解释你所写的一百页代码时,你对此会有一个更深刻的理解。

2. 4、库

再看刚才提到的那个程序范例。在开头的注释之后是:

#include <iostream.h>

这一行简单地告诉计算机程序里需要iostream库,所以它应该被包含进来。库是一个可以在用户程序中被用来进行各种各样操作的程序集合。iostream是一个库(也叫做头文件),用于执行输入输出(I/O)任务。在code.box.sk里你可以找到许多由废寝忘食的高手们编写的用以实现各种各样用途的非商业性目的的C++库。

2. 5、函数

接下来的一行是:

int main()

这是函数的声明部分。函数是用于完成一个任务的一些列语句的集合。函数声明包括函数名和函数返回值。正如声明所示,main函数通过return(0)返回一个整数值。同样,所有声明为整型的函数都必须返回整型值。显而易见,函数(在这里是main函数)以花括号结束。“{”和“}”代表函数体的开始和结束。以后我们将更深入地探讨函数。

2.6、流

什么是流?在C++里,输入/输出设备被称为流。cout(我们上面用到的)是c(onsole,控制台)out(put,输出)流,而发送(插入)运算符被用来向流发送“We own you”数据。在第一个语句:

cout<<"We own you";

在“<<”运算符之后用引号括起来的字符形成一个字符串。当程序运行的时候,“We own you”就被送到控制台输出设备。对,它也叫计算机屏幕。

!注意:C++是区分大小写的。也就是说cout和Cout是不同的。

2.7、返回

第二个语句是:

return(0);

用以使程序结束运行并发送返回值0给计算机。“0”代表程序正常结束。

!注意:语句用一个“;”结束。在C++ 中分号意味着语句的结束。

3. 数据系统

3.1、 十进制

基数为10的数字系统。用10个数字表示:0到9。任何数字的加权0等于1。例如:5加权0=1。以基数10和加权表示的数字:

2600:2*(10加权3)+6*(10加权2)

33:3*(10加权1)+3*(10加权0)

3.2、 二进制

基数为2的数字系统。用2个数字表示:0和1。工作原理和十进制一样,只不过基数是2而不是10。例如:

110:1*(2加权2)+1*(2加权1)=6(十进制)

3.3、 十六进制

基数为16的数字系统。用16个数字表示:0到9和“A”到“F”。工作原理和十进制一样,只不过基数是16而不是10。例如:

1B:1*(16加权1)+B*(16加权0)=27(十进制)

4. 练习

4.1、 运行

获取一个编译器并安装,然后输入上面那个范例程序并运行。请注意语法结构!

4.2、 编程

不看范例程序,你自己编一个可以显示你的姓名的程序。请注意不要看范例程序,这对你很有好处。

4.3、 转换

二进制转换成十进制:110101、001101、10101110

十进制转换成十六进制:234、324、19394

十六进制转换成二进制:2F、1B3、234、125

5. 现在干什么?

5.1、 优秀编程站点

http://code.box.sk --> 内容丰富

http://www.borland.com --> 免费、共享和商业性编译器

http://www.cprogramming.com --> Some original tuts

http://www.planet-source-code.com --> 源代码极为丰富

5.2、 优秀编程书籍

——》A Guide to Programming in C++(C++程序设计指南)

我的第一本关于C++的书(从那儿“借”了不少定义)

——》C-How to Program(C程序设计)

关于C程序设计的最好的书籍之一。对所有层次的程序员都大有裨益。

——》在线书籍

你可以在code.box.sk上找到许多在线书籍。Think in C++(C++编程思想)应该是最好的一本,必读!

第二篇 I/O和变量

目录

1、 简介

5.3、 这一篇讲什么?

5.4、 需要作什么准备工作?

2、 控制台输出(cout)

2.1、忽略字符

2.2、基本运算

3、 变量和常量

3.1、什么是变量?

3.2、数据类型

3.3、整形(int)和长整形(long)

3.4、双浮点型(double)

3.5、字符型(char)

3.6、常量

4、 控制台输入

4.1、怎么做?

4.2、范例程序

5、 练习

5.1、求面积

5.5、 爱因斯坦公式

正文

1、 简介

1.1、 这一篇讲什么?

在这一篇(绝对是为初学者度身定制的)里,你可以学到如何从用户那儿获取数据并使用它们。你并需要太多的C++语言基础。

1.2、 需要做什么准备工作?

请先阅读C++快速入门的第一篇“C++简介”。你还需要一个C++编译器。如果你没有读过C++快速入门的第一篇,你可以在code.box.sk C/C++部分找到它。我建议你不要复制和粘贴这些代码,相反你应该尝试着自己写,那可以让你对于语法有更深刻的理解。

2、 控制台输出(cout)

2.1、转义字符

要显示我们自己的名字,可以这样写:

cout<<"Bill Gates";

但如果我们需要显示:

My name is "Bill"

怎么办呢?这似乎有些困难,因为在cout语句中双引号代表一个字符串的开始和结束。例如“that is a string”是不可能在屏幕上显示双引号的。“\”被用来解决这个问题,这样,如果你需要显示:

My name is "Bill"

你可以这样写:

cout<<"My name is \"Bill\""

转义符号的作用

——————————————————

\n ——》 换行

\" ——》 输出双引号

\' ——》 输出单引号

\\ ——》 输出反斜杠

\t ——》 跳格(移动8格)

\a ——》 警告(发出“嘟”的声音)

2.2、基本运算

要用cout显示数字无需加双引号,例如:

cout<<"A Number: "<<2600<<endl;

!注意:在每一项的左边都需要一个“<<”。

你还可以在cout中实现简单的运算,例如:

cout<<"Total Money: "<<((5*34)+(5*17))<<endl;

运算符作用

————————

+ ——》 加法

- ——》 减法

/ ——》 除法

* ——》 乘法

% ——》 取模

3、 变量

3.1、什么是变量?

定义:变量是一个用于存放数据的命名内存地址。太晦涩?其实变量可以被形象的比喻为一个空瓶子。这个空瓶子可以被用户和程序员装填。在使用变量前必须先定义它的类型和标识符。变量的类型指示这个变量可以存放什么数据。各种不同的数据类型将在3.2中讨论。变量的标识符其实就是变量的名字。请看下面这个例子:

int counter;

这个例子定义了一个用于存放整形(int)数据并且名字为“counter”的变量。变量用于存放数据。对一个变量你可以这样赋值:

counter = 35;

其中的等号代表赋值,它的效果就是把35存放到存储器中名字为“counter”的单元中去。在4.2有一个范例程序详细介绍了变量的作用。

3.2、数据类型

程序员可以定义自己的数据类型,同时C++也提供了一些预先定义好的类型。让我们先来了解一下这些C++自带的数据类型:

类型说明

————————————————————————

双浮点型(double):1/(10*308) to 10*308 (+ or -)

整型(int):-32,767 to +32,767

长整型(long):-2,147,483,647 to +2,147,483,647

字符型(char):所有可打印和显示的字符

接下来,让我们一个一个的来。

3.3、整型(int)和长整型(long)

整型和长整型用于存放正的或负的整数。整型和长整型唯一的区别是存放数据的范围不同。如果将一个小数存放在一个整型变量中,则小数部分将被截去。

3.4、双浮点型(double)

双浮点型用于存放正的或负的实数。当我们显示非常大或非常小的数字时,计算机将使用科学计数法。

3.5、字符型(char)

字符型用于存放一个字符。字符包括所有可以显示的字符,如数字,字母和符号:^+#$~@2çþ 等。例如:

char iamachar;

iamachar = 'C';

cout<<iamachar<<

显示为C。

3.6、常量

常量用在一个变量语句前加“const”实现。例如:

const double pi = 3.14159;

这样,在整个程序的运行期间,标识符pi将代表3.14159。它不能被赋值因为它是常量。试图改变一个常量的值将导致编译错误。

4、 控制台输入(cin)

4.1、怎么做?

当用户可以程序进行交互操作时,程序将变得更有用。控制台输入暂停一个程序并允许用户输入数据为变量赋值。例如:

cin>>counter;

这个语句使得程序等待用户输入一个数据为变量counter赋值。cin和cout一样都属于iostream库,但cin时控制台输入流。“>>”被称为“获取运算符”或“提取运算符”,用于从输入流中得到数据。

4.2、范例程序

下面是一个示范变量和cin用法的范例程序:

/* 来自 code.box.sk

Mp3 评价程序 */

#include <iostream.h>

int main()

{

int rate; // rate变量的定义

cout<<"Please rate Jotun by entering a number between 1-5 :";

cin>>rate; // 从用户处得到评价

cout<<"You gave jotun "<<(rate*20)<<" percent";

return(0);

}

首先用户被要求对于Jotun的mp3输入一个在1到5之间的等级,然后这个等级将被转化为百分制并显示。

5、 练习

5.1、求面积

编一个根据用户输入的半径求圆面积的公式。如果程序不能正常工作,请仔细检查语法。

5.2、爱因斯坦公式

根据用户自定义的质量和爱因斯坦公式e=mcc来计算可以释放的能量。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有