c++菜鸟教程,c++ 菜鸟教程,菜鸟教程c++语言C++ 是一种高级语言,由 Bjarne Stroustrup 于 1979 年在贝尔实验室开始设计开发。C++ 进一步扩充和完善了 C 语言,是一种面向对象的程序设计语言,可运行于多种平台上,如 Windows、MAC 操作系统以及 UNIX 的各种版本。一、C++ 教程适合人群本教程是专门为初学者打造的,帮助他..
13593742886 立即咨询发布时间:2025-02-08 热度:115
c++菜鸟教程,c++ 菜鸟教程,菜鸟教程c++语言
C++ 是一种高级语言,由 Bjarne Stroustrup 于 1979 年在贝尔实验室开始设计开发。C++ 进一步扩充和完善了 C 语言,是一种面向对象的程序设计语言,可运行于多种平台上,如 Windows、MAC 操作系统以及 UNIX 的各种版本。
本教程是专门为初学者打造的,帮助他们理解与 C++ 编程语言相关的基础到高级的概念。在开始练习本教程中所给出的各种实例之前,需要对计算机程序和计算机程序设计语言有基本的了解。
头文件
<tiangong type="reference" index="2-3">C++ 语言定义了一些头文件,这些头文件包含了程序中必需的或有用的信息。例如在简单的输出“Hello World”程序中,包含了头文件<iostream>
</tiangong>。
命名空间
使用using namespace std;
告诉编译器使用 std 命名空间。命名空间是 C++ 中一个相对新的概念。
主函数
int main()
是主函数,程序从这里开始执行。
输出语句
<tiangong type="reference" index="2-6">cout << "Hello World";
会在屏幕上显示消息“Hello World”</tiangong>。
返回值
return 0;
终止main()
函数,并向调用进程返回值 0。
保存文件
打开一个文本编辑器,添加代码后保存文件为.cpp
扩展名的文件,例如hello.cpp
。
编译命令
打开命令提示符,进入到保存文件所在的目录,键入g++ hello.cpp
,输入回车,编译代码。如果代码中没有错误,命令提示符会跳到下一行,并生成a.out
可执行文件。
运行程序
键入a.out
来运行程序,可以看到屏幕上显示“Hello World”。
分号
在 C++ 中,分号是语句结束符。例如x = y; y = y+1; add(x, y);
,每个语句必须以分号结束,它表明一个逻辑实体的结束。
语句块
<tiangong type="reference" index="2-12">语句块是一组使用大括号括起来的按逻辑连接的语句。例如{ cout << "Hello World"; return 0; }
</tiangong>。
标识符
C++ 标识符是用来标识变量、函数、类、模块,或任何其他用户自定义项目的名称。一个标识符以字母 A-Z 或 a-z 或下划线_开始,后跟零个或多个字母、下划线和数字(0-9)。例如mohd zara abc move_name a_123 myname50 _temp j a23b9 retVal
等都是有效的标识符,并且 C++ 是区分大小写的编程语言,Manpower
和manpower
是两个不同的标识符。
关键字
C++ 中有一些保留字,这些保留字不能作为常量名、变量名或其他标识符名称,例如asm else new this auto enum operator throw bool explicit private true break export protected try case extern public typedef catch false register typeid char float reinterpret_cast typename class for return union const friend short unsigned const_cast goto signed using continue if sizeof virtual default inline static void delete int static_cast volatile do long struct wchar_t double mutable switch while dynamic_cast namespace template
等。
三字符组
三字符组就是用于表示另一个字符的三个字符序列,又称为三字符序列。三字符序列总是以两个问号开头。例如??= #
、??/ \
、??' ^
、??( [
、??) ]
、??! |<tiangong type="reference" index="2-15">
、??< {
、??> }
、??- ~
。如果希望在源程序中有两个连续的问号,且不希望被预处理器替换,这种情况出现在字符常量、字符串字面值或者是程序注释中,可选办法是用字符串的自动连接:"...?""?"...
或者转义序列:"...?\?..."
。从 Microsoft Visual C++ 2010 版开始,该编译器默认不再自动替换三字符组。如果需要使用三字符组替换(如为了兼容古老的软件代码),需要设置编译器命令行选项/Zc:trigraphs
,g++
仍默认支持三字符组,但会给出编译警告</tiangong>。
空格
只包含空格的行,被称为空白行,可能带有注释,C++ 编译器会完全忽略它。在 C++ 中,空格用于描述空白符、制表符、换行符和注释。
C++ 实例包含了多种类型,如输出“Hello, World!”、标准输入输出、输出换行、实现两个数相加、创建不同类型的变量、求商及余数、查看 int, float, double 和 char 变量大小、交换两个数、判断一个数是奇数还是偶数、判断元音/辅音、判断三个数中的最大数、求一元二次方程的根、计算自然数之和、判断闰年、求一个数的阶乘、创建各类三角形图案、求两数的最大公约数、求两数最小公倍数、实现一个简单的计算器、猴子吃桃问题等。
C++ 内置了丰富的运算符,包括算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符和杂项运算符等。
算术运算符
例如+
(把两个操作数相加)、-
(从第一个操作数中减去第二个操作数)、*
(把两个操作数相乘)、/
(分子除以分母)、%
(取模运算符,整除后的余数)、++
(自增运算符,整数值增加 1)、--
(自减运算符,整数值减少 1)等。假设变量A
的值为 10,变量B
的值为 20,则A + B
将得到 30,A - B
将得到 -10,A * B
将得到 200,B / A
将得到 2,B % A
将得到 0,A++
将得到 11,A--
将得到 9。
关系运算符
例如==
(检查两个操作数的值是否相等,如果相等则条件为真)、!=
(检查两个操作数的值是否相等,如果不相等则条件为真)、>
(检查左操作数的值是否大于右操作数的值,如果是则条件为真)、<
(检查左操作数的值是否小于右操作数的值,如果是则条件为真)、>=
(检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真)、<=
(检查左操作数的值是否小于或等于右操作数的值,<tiangong type="reference" index="7-22">如果是则条件为真)。假设变量A
的值为 10,变量B
的值为 20,则(A == B)
不为真,(A!= B)
为真,(A > B)
不为真,(A < B)
为真,(A >= B)
不为真,(A <= B)
为真</tiangong>。
逻辑运算符
例如&&
(称为逻辑与运算符。如果两个操作数都 true,则条件为 true)、||
(称为逻辑或运算符。如果两个操作数中有任意一个 true,则条件为 true)、!
(称为逻辑非运算符。用来逆转操作数的逻辑状态,如果条件为 true 则逻辑非运算符将使其为 false)。假设变量A
的值为 1,变量B
的值为 0,则(A && B)
为 false,(A || B)
为 true,!(A && B)
为 true。
位运算符
例如&
(按位与操作,按二进制位进行“与”运算。运算规则:0&0 = 0; 0&1 = 0; 1&0 = 0; 1&1 = 1;
)、|
(按位或运算符,按二进制位进行“或”运算。运算规则:0|0 = 0; 0|1 = 1; 1|0 = 1; 1|<tiangong type="reference" index="7-24">1 = 1;
)、^
(异或运算符,按二进制位进行“异或”运算。运算规则:0^0 = 0; 0^1 = 1; 1^0 = 1; 1^1 = 0;
)、~
(取反运算符,按二进制位进行“取反”运算。运算规则:~1 = -2; ~0 = -1;
)、<<
(二进制左移运算符。将一个运算对象的各二进制位全部左移若干位(左边的二进制位丢弃,右边补 0))、>>
(二进制右移运算符。将一个数的各二进制位全部右移若干位,正数左补 0,负数左补 1,右边丢弃)。假设如果A = 60
,且B = 13
,现在以二进制格式表示,它们如下所示:A = 0011 1100
,B = 0000 1101
,则A&B = 0000 1100
,A</tiangong>|<tiangong type="reference" index="7-24">B = 0011 1101
,A^B = 0011 0001
,~A = 1100 0011
,A << 2
将得到 240,即为1111 0000
,A >> 2
将得到 15,即为0000 1111
</tiangong>。
赋值运算符
例如=
(简单的赋值运算符,把右边操作数的值赋给左边操作数)、+=
(加且赋值运算符,<tiangong type="reference" index="7-25">把右边操作数加上左边操作数的结果赋值给左边操作数)、-=
(减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数)、*=
(乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数)、/=
(除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数)、%=
(求模且赋值运算符,求两个操作数的模赋值给左边操作数)、<<=
(左移且赋值运算符)、>>=
(右移且赋值运算符)、&=
(按位与且赋值运算符)、^=
(按位异或且赋值运算符)、</tiangong>|=
(按位或且赋值运算符)。
杂项运算符
例如sizeof
(sizeof
运算符返回变量的大小。例如,sizeof(a)
将返回 4,其中a
是整数)、Condition?X:Y
(条件运算符。如果Condition
为真?则值为X
:否则值为Y
)、,
(逗号运算符会顺序执行一系列运算。整个逗号表达式的值是以逗号分隔的列表中的最后一个表达式的值)、.
(点)和->
(箭头)(成员运算符用于引用类、结构和共用体的成员)、Cast
(强制转换运算符把一种数据类型转换为另一种数据类型。例如,int(2.2000)
将返回 2)、&
(指针运算符&
返回变量的地址。例如&a;
将给出变量的实际地址)、*
(指针运算符*
指向一个变量。例如,*var;
将指向变量var
)。
函数定义
C++ 中的函数定义的一般形式为return_type function_name(parameter list){body of the function}
。函数由一个函数头和一个函数主体组成,返回类型是函数返回的值的数据类型,有些函数执行所需的操作而不返回值,在这种情况下,返回类型是关键字void
;函数名称是函数的实际名称,函数名和参数列表一起构成了函数签名;参数就像是占位符,当函数被调用时,向参数传递一个值,这个值被称为实际参数,参数列表包括函数参数的类型、顺序、数量,参数是可选的,也就是说,函数可能不包含参数;函数主体包含一组定义函数执行任务的语句。例如int max(int num1, int num2){int result; if(num1>num2)result = num1; else result = num2; return result;}
。
函数声明
函数声明会告诉编译器函数名称及如何调用函数。函数的实际主体可以单独定义。函数声明包括return_type function_name(parameter list);
。针对上面定义的函数max()
,以下是函数声明:int max(int num1, int num2);
。在函数声明中,参数的名称并不重要,只有参数的类型是必需的,因此int max(int, int);
也是有效的声明。当在一个源文件中定义函数且在另一个文件中调用函数时,函数声明是必需的。在这种情况下,应该在调用函数的文件顶部声明函数。
调用函数
创建 C++ 函数时,会定义函数做什么,<tiangong type="reference" index="8-29">然后通过调用函数来完成已定义的任务。当程序调用函数时,程序控制权会转移给被调用的函数。被调用的函数执行已定义的任务,当函数的返回语句被执行时,或到达函数的结束括号时,会把程序控制权交还给主程序。调用函数时,传递所需参数,如果函数返回一个值,则可以存储返回值。例如#include <iostream> using namespace std; int max(int num1, int num2);
</tiangong>。
c++菜鸟教程,c++ 菜鸟教程,菜鸟教程c++语言C++ 是一种高级语言,由 Bjarne Stroustrup 于 1979 年在贝尔实验室开始设计开发。C++ 进一步扩充和完善了 C 语言,是一种面向对象的程序设计语言,可运行于多种平台上,如 Windows、MAC 操作系统以及 UNIX 的各种版本。一、C++ 教程适合人群本教程是专门为初学者打造的,帮助他...