#include <iostream>
using namespace std;
int main()
{
cout << "Hello, world!" << endl;
return 0;
}
可以用\n代替endl
#include <iostream>
using namespace std;
int main()
{
cout << "Hello, world!" << "\n";
return 0;
}
在 C++ 编程中,我们使用流插入运算符( << )向文件写入信息,使用流提取运算符( >> )从文件读取信息
cout 流速度较慢,如果速度过慢可以用 <stdio.h> 库中的 printf() 格式化输出函数,不需要 using namespace std;。
它的格式为:
#include <stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}
C++中 "\n" 与 endl 的区别是什么?
"\n" 表示内容为一个回车符的字符串。
std::endl 是流操作子,输出的作用和输出 "\n" 类似,但可能略有区别。
std::endl 输出一个换行符,并立即刷新缓冲区。
例如:
std::cout << std::endl;
相当于
std::cout << '\n' << std::flush;
或者
std::cout << '\n'; std::fflush(stdout);
用 endl 时会刷新缓冲区,使得栈中的东西刷新一次,但用 "\n" 不会刷新,它只会换行,盏内数据没有变化。但一般情况,二者的这点区别是很小的,在大的程序中可能会用到。建议用 endl 来换行。
C++ 中 using namespace std 到底是什么意思?
声明一个命名空间的意思。命名空间在多人合作的时候很有用,因为你定义了变量 a,别人也定义了变量 a,这样就重复定义了。如果你在自己的命名空间中定义了 a,别人在别人的命名空间中定义了 a,这样就不重复了
- using:引用
- namespace:命名空间(名字空间)
- std:标准(standard,一个命名空间的名字,cout、endl等都依靠这个命名空间)
#include <iostream>
// using namespace std;
int main()
{
std::cout << "Hello, world!" << std::endl;
return 0;
}
cout输出内容
cout输出单份内容
cout输入多份内容
若输出内容为非数字,必须用""包围,若纯数字可以不用
endl有换行的作用
解决用cout输出中文会出现乱码
方法一
1,在代码头部引入windows.h库
#include "windows.h"
2,并在main函数加入--
SetConsoleOutputCP(CP_UTF8);
SetConsoleOutputCP();表示设置控制台输出的字符编码,上述即为用UTF8输出。
方法二
在main函数中添加--
system("chcp 65001");
此方法会额外输出一行
Active code page: 65001
指的是编码转换为65001,即UTF-8
标识符和关键字
标识符的命名规范
下划线命名时,一般全部小写
适用场景
标识符的限制规则
常量
C++常量类型的确定
遵循最小原则
默认为int类型
常量可以有后缀,具有不同的功能
10L;//指定为long类型
123UL;//指定为unsigned long 类型
字面常量
字符型必须为单个字符
整型
短整型
short
占用2个字节
取值范围为-32768——32767
-2的15次方到2的15次方-1
整型
int
占用4个字节
取值范围为 -2147483648——2147483647
-2的31次方到2的31次方-1
长整型
long
Windows为4字节,Linux为4字节(32位),8字节(64位)
取值范围四字节同上,八字节同下
长长整型
long long
占用8个字节
取值范围 -2的63次方到-2的63次方-1
sizeof函数
用法:sizeof(数据)
用于得到数据所占用的字节
例如
cout<<"short变量,占用字节:"<<sizeof(数据)<<endl;
无符号和有符号数字
有符号
[signed] 数据类型 ,表示有正负号,可存储正数或者负数,signed可不写
signed int 和 int 表示的意义相同
无符号
unsigned 数据类型,表示无符号,只能存储正数,unsigned必写,仅正数
无符号的快捷写法:u_int num =100;
等同于 unsigned int num =100;
实型
实型数据没有signed和unsigned,默认全部有符号,下面有效位数仅参考,具体看编译器的标准实现
设置为小数显示
cout<<fixed;
设置现实的最大宽度(最大位数)
cout.width(20);//设置最大位数为20位
单精度浮点数
只能维持前七位的准确输出
有效位数6-7
四字节
双精度浮点数
有效位数15-16
八字节
多精度浮点数
有效位数18-19
十六字节
符号常量
定义语法
使用细节
先定义,后使用
符合字母,数字,下划线组合的要求且数字不可开头,建议字母全部大写,便于区分变量
变量
1,变量的声明
2,变量的赋值
3,快速定义