1.Day 1
1.部分基础知识
1. 实型---浮点型
2.sizeof---统计某个变量的字节大小
3. float F1=3.14f ; 3.14后面加f 可以编译更快
4.c++ 默认输出6位小数
2.字符型--char
1.字符型在存储时,存储ASCII码。比如a 存储为 97,A---65
3.转义字符
\n---换行符
\\---\
\t 水平制表符---可以让输出窗口对齐
4.字符串
1. C语言定义字符串 char str[]="Hello,world"
2.C++ 定义字符串 string str="Hello,world!"
5.数据的输入
关键字 :cin cin>>a 给a赋一个值
#include<iostream>
#include<string.h>
using namespace std;
int main() {
//对整形进行赋值
int a= 0;
cin >> a;
//对浮点型进行赋值
float f= 3.14f;
cin >> f;
//对字符型进行赋值
char str= 'a';
cin >> str;
//对字符串进行赋值
string str= "Hello world!";
cin >> str;
//对布尔类型进行赋值
bool flag= true;
cin >> flag;//输入为0和非0的值
string str = "Hello world!";
cout << str << endl;
system("pause");
return 0;
}
6.递增运算符
1.前置递增和后置递增的区别
int a=1;
b=++a * 10
c=a++ * 10
输出结果 b=20 c=10
7.程序流程结构
- 顺序
- 选择
- 循环
8. 三目运算符
c = a > b ? a : b
将a和b进行比较,如果a大则返回a ,否则返回b
(a > b ? a : b)=100
将比较大的那个 赋值100
2. Day 2
1. while 和do ......while
区别在于 while会先判断再执行,do while() 先执行后判断
2.for 循环
3. 数组
1.一维数组
1.一维数组定义
- int arr[10];
- int arr[]={1,2,3}
- int arr[5]={1,2,3}
2.统计数组的个数
sizeof(arr)/sizeof(arr[0])
2.二维数组
1.数组定义 :数据类型 数组名 【行数】【列数】
2.查看行数和列数
sizeof(arr)/sizeof(arr[0])//二维数组的行数
sizeof(arr[0])/sizeof(arr[0][0])二维数组的列数
4.函数
1.函数的定义
5.函数的分文件编写
1.创建.h的头文件
2.创建CPP文件
3.源文件(cpp)中写函数的内容主体,开头引用创建的头文件
4.头文件中写函数的声明
5.在其他文件中想要使用函数,在开头引用对应的头文件。
6.定义指针
定义指针:
int *p;
使用指针
*p=100 *代表解引用
int *p=&a,其实为int *作为一种定义的关键字。
sizeof (int * )在32位操作系统下为4个字节,在64位操作系统下位8个字节
空指针:
int *p =NULL,用于初始化指针变量
关于指针和数组、常值之间得关系
int a = 0;
int arr[2] = { 1,2 };
int* p;
int* arr2;
p = &a;
arr2 = arr;
cout << *p << endl;
cout << *arr2 << endl;
cout << arr2[0] << endl;
输出的结果为 0 1 1.也就是说数组名就是地址开头,arr[N]是引用地址的一种方式,而*arr,也是引用地址的一种方式。
各种数据类型和对应指针之间的关系
//常值和指针之间的定义
int a = 0;
int * p=&a;
//数组和指针之间的定义
int arr[10]={1,2,3};
int *p =arr;
//字符型和指针之间的定义
char a = 'a';
char* p = &a;、
//字符串和指针之间的定义
string str="abcd";
string *p =&str;
//布尔类型
bool a = 1;
bool* p = &a;
//结构体
struct MyStruct
{
int age = 0;
};
struct MyStruct s1;
struct MyStruct * p = &s1;
cout << p->age << endl;
//类定义
class MyClass
{
int test = 0;
};
class MyClass c1;
class MyClass *p =&c1;
cout << p->test<< endl;
7.Const 修饰指针
int a =10
const int *p =&a
指针指向可以修改,指针指向的值不能修改
3.Day 3
1.指针和值传递
2.结构体
struct student{
};
struct student S1;
数据结构的指针
&S1;