1.1 第一个c++程序
- 编写程序
shell
vi 01helloworld.cpp
cpp
#include <iostream>
using namespace std;
int main (voi d) {
cout << "hello world!" << std;
return 0;
}
- 编译运行
shell
gcc helloworld.cpp -o helloworld -lstc++ #或者
g++ helloworld.cpp -o helloworld
.helloworld
-
简单分析
- 文件名
C++文件一般命名为.cpp后缀
- 代码
cpp
/*
C++使用IO相关函数时的标准头文件 类似于stdio.h头文件
C++风格的很多头文件没有.h后缀
C++兼容C,C++中可以使用stdio.h 也提供了C++风格的头文件 cstdio
该头文件一般位于 /usr/include/c++/编译器版本/
*/
#include <iostream>
/*名字空间*/
using namespace std;
int main (void) {
/*输出*/
cout << "hello world!" << std;
return 0;
}
1.2 数据的输入输出
1.2.1 流的概念
在C语言中输入/输出看做数据缓冲区 ,而C++中是一连串的数据流。
输入流:从输入设备流向内存的字节序列。
输出流:从内存流向输出设备的字节序列。
1.2.2 cout 和插入运算符<<
cpp
#include <iostream>
#include <stdio.h>
using namespace std;
int main (void) {
int a = 2;
float b = 3.12;
char c = 'c';
printf("%d,%f,%c\n", a, b, c); // 2,3.120000,c
cout << a << ", " << b << ", " << c << endl; // 2, 3.12, c
return 0;
}
cout的优势在于自动解析这些基本数据类型;
1.2.3 cin和析取运算符>>
cpp
cin >> x
当程序执行到cin语句时,就会停下来等待键盘数据的输入,输入数据被插入到输入流中,数据输入完后按Enter键结束。当遇到>>时,就从输入数据流当中提取一个,存入变量x中。
需要说明的几点内容
-
在一条cin语句中可以同时为多个变量输入数据。各输入数据之间用一个或多个空白作为间隔符。
-
cin具有自动识别数据类型的能力。析取运算符>>根据他后面的变量类型从输入流当中为他们提取对应的数据。
比如cin >> a >> b >> c;
假设输入:13.45b,析取运算符>>将根据其后a、b、c类型决定输入的13到底是数字还是字符,以此类推。例子最后代表性:
cpp
#include <iostream>
#include <cstdio>
using namespace std;
int main (void) {
int a;
double b;
char c;
/*
scanf("%d %lf %c", &a, &b, &c);
printf("%d %f %c\n", a, b, c);
*/
cin >> a >> b >> c; //输入:13.45b
cout << a << " " << b << " " << c << endl; // 输出:13 0.45 b
return 0;
}