C++ 入门教程之一 -- 基础概念
C++ 是一种跨平台的编程语言,用来创建高性能的应用程序,如操作系统,聊天软件,浏览器,游戏等。c++ 源自于 c 语言,并且很大程度上使用了 c 语言的设计理念。
下面用几篇文章介绍 c++ 的基础用法。
结构
c++ 程序是一个集成很多命令和描述的集合,以下是一个模板程序:
#include <iostream>
using namespace std;
// comment
int main()
{
cout << "Hello world!" << endl;
cout << "Hello world!" << "WOW" << "\n";
return 0;
}
/*
comments
*/
所有 c++ 程序的入口都是 main()
function,使用大括号 {}
将 function 的内容包围起来,括号内的指令在 fuction 运行时执行。每句指令结尾使用分号;
结束。
cout
是 iostream
的一个 object,功能是输出信息到标准的输出设备,一般是显示屏上。<<
是 insertion operator 用来将后面的字符串传入 cout 指令最后输出到显示屏。可以使用多个 <<
将信息连起来。
iostream
是头文件,里面包含各种程序执行需要的功能模块,使用 #include
调用头文件。iostream 包含输入输出数据块的 stream object。
每个 namespace
是一个申明区域,定义了程序调用 function 或 object 时的类型,using namespace std
告诉程序默认使用 std
类型的元素。在命令中可以直接写 std 中定义的元素:
cout << "Hello world!";
std::cout << "Hello world!";
以上两种写法效果是一样的,表示使用 std 类型的 cout 指令。
也可以写自定义的申明如:
namespace fs = boost::filesystem;
fs:path testpath;
以上申明意思是用 fs
表示 boost::filesystem
类型,然后定义一个 boost::filesystem::path
类型的变量。
cout 执行后默认不添加行结束符号,添加一个 endl
object 来实现换行操作。也可以添加字符串 \n
表示换行。
反斜杠 \
是转义符用来输入特殊意义的符号,如:\n
表示换行。
//
双斜杠用来添加单行注释信息,斜杠所在的行不会被编译。/*....*/
用来表示注释区域,这一段的内容都不被编译。
变量
定义一个变量会请求一个内存空间来存储变量值。编译器需要在定义变量时指定变量类型,类型可以是系统内置的也可以是自定义的。定义的个体可以是变量,function,class 等:
int testVar = 10;
以上定义了一个 int 整数型的变量 testVar 并赋值为 10,注意变量名是区分大小写的,也就是 testVar 和 testvar 代表两个不同的变量。
double testDouble1, testDouble2;
也可以同时定义两个变量。
根据需求设置变量类型,可以优化内存占用空间。
示例:
#include <iostream>
using namespace std;
int main()
{
int a = 30;
int b = 12;
int sum = a + b;
cout << sum;
return 0;
}
//Outputs 42
定义的变量可以在后续程序中赋值:
int a;
int b = 1;
a = 2;
b = 3;
输入参数
使用 cin
来请求用户输入数据,用 extraction operator 来将输入数据提取到别处:
int a;
cin >> a;
以上程序定义一个 int 型变量,然后提示用户输入一个数据存储到变量 a 中。
结合输入输出可以实现简单的交互操作:
#include <iostream>
using namespace std;
int main()
{
int a, b;
int sum;
cout << "Enter a number \n";
cin >> a;
cout << "Enter another number \n";
cin >> b;
sum = a + b;
cout << "Sum is: " << sum << endl;
return 0;
}
运算符
c++ 支持以下运算符:
- 加
- 减
- 乘
- / 除
- % 模(整除后的余数)
int a = 1 + 1;
int b = 5 * 6;
int c = 5 % 2;
int d = 5 + 2 * 2;
int e = (5 + 2) * 2;
cout << c << endl;
//output: 1
如果对变量本身的加减乘除操作可以简写:
x *= 3; // equivalent to x = x * 3
x /= 2; // equivalent to x = x / 2
x %= 4; // equivalent to x = x % 4
对本身自加或自减操作,有两种方式:后缀和前缀:
x++; //后缀,相当于 x = x + 1
x--;
++x;
--x;
使用后缀方式是先执行表达式再自加,前缀方式是先自加再执行表达式:
int a = 1;
int b = a++;
int c = ++a;
//b = 1
//c = 3
以上是基础概念及指令。
标签:无