C++基础入门(部分省略)
数据类型
整型
数据类型 | 占用空间 | 取值范围 |
---|---|---|
short | 2字节 | (-215-215-1) |
int | 4字节 | (-231-231-1) |
long | Windows为4字节,Linux为4字节(32位),8字节(64位) | (-231-231-1) |
long long | 8字节 | (-263-263-1) |
浮点型
数据类型 | 占用空间 | 有效数字范围 |
---|---|---|
float | 4字节 | 7位有效数字 |
double | 8字节 | 15-16位有效数字 |
字符型
- 占1个字节
- 字符型变量并不是把字符本身放到内存中存储,而是将对应的ASCLL码放入存储单元
char c = 'c';
转义字符
转义字符 | 含义 | ASCLL码(十进制) |
---|---|---|
\a | 警报 | 007 |
\b | 退格 | 008 |
\f | 换页 | 012 |
\n | 换行 | 010 |
\r | 回车 | 013 |
\t | 水平制表 | 009 |
\v | 垂直制表 | 011 |
\\ | 一个反斜线字符 | 092 |
\’ | 一个单引号字符 | 039 |
\" | 一个双引号字符 | 034 |
\? | 一个问号 | 063 |
\0 | 数字0 | 000 |
\ddd | 8进制转义字符 | 3位8进制 |
\xhh | 16进制转义字符 | 3位16进制 |
字符串
C:char 变量名[] = "abc"
C++:string 变量名 = "abc"
布尔类型
- true(1)
- false(0)
- 占1个字节大小
goto
# include<iostream>
using namespace std;
void test02() {
cout << 1 << endl;
cout << 2 << endl;
goto FLAG;
cout << 3 << endl;
cout << 4 << endl;
FLAG:
cout << 5 << endl;
}
int main() {
//test01();
test02();
system("pause");
return 0;
}
函数值传递
- 值传递时,如果形参发生,并不会影响实参
# include<iostream>
using namespace std;
void swap(int a, int b) {
cout << a << " " << b << endl;
int temp = a;
a = b;
b = temp;
cout << a << " " << b << endl;
}
void test02() {
int a = 10;
int b = 20;
swap(a, b);
cout << a << " " << b << endl;
}
int main() {
//test01();
test02();
system("pause");
return 0;
}
指针
空指针和野指针
空指针:指针变量指向内存中编号为0的空间
用途:初始化指针
注意:空指针指向的内存是不可访问的
野指针:指针指向非法空间
const修饰指针
- const修饰指针 常量指针(指针指向可修改,指向的值不可修改)
- const修饰常量 指针常量(指针指向不可修改,指向的值可修改)
- const都修饰(都不可以改)
指针和数组
# include<iostream>
using namespace std;
void test02() {
int arr[] = { 1, 2, 3, 4, 5, 6 };
int* p = arr;
cout << *p << endl;
p++;
cout << *p << endl;
int* p2 = arr;
for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) {
cout << arr[i] << " ";
cout << *p2 << " ";
p2++;
}
}
int main() {
//test01();
test02();
system("pause");
return 0;
}
指针和函数
# include<iostream>
using namespace std;
void swap(int* a, int* b) {
cout << *a << " " << *b << endl;
int temp = *a;
*a = *b;
*b = temp;
cout << *a << " " << *b << endl;
}
void test02() {
int a = 10;
int b = 20;
swap(&a, &b);
cout << a << " " << b << endl;
}
int main() {
//test01();
test02();
system("pause");
return 0;
}