C++基础入门详细笔记(一)

 
 
 

一、输入输出

#include<iostream>
using namespace std;    //std为standard,标准命名空间
int main()
{
        //若没有using namespace std;
        //则改为std::cout<<"HelloWorld!"<<std::end1;
        cout<<"HelloWorld!"<<endl;  
        return 0;

<<:插入运算符

 
> endl:end line,控制符,表示重起一行(\n)
> endl和\n区别:endl具有换行和fflush(stdin)功能,清除缓冲流;
\n仅具有换行功能。
 
cout输出格式:
> cout<<"now you are here"<<"carrots"<<"that`s ok"<<endl;
> cout<<"now you are here"<<endl;
   cout<<"carrots"<<endl;
   cout<<"that`s ok"<<endl;
> cout <<"now you are here"
          <<"carrots"
          <<"that`s ok"
          <<endl;

 

cout 编译处理过程:
 

二、变量、数据类型及运算符

1、符号常量

 
符号常量
表示
CHAR_BIT
char的位数
CHAR_MAX
char的最大值
CHAR_MIN
char最小值
SCHAR_MAX
signed char的最大值
SCHAR_MIN
signed char的最小值
UCHAR_MAX
unsigned char的最大值
SHRT_MAX
short的最大值
SHRT_MIN
short的最小值
USHRT_MAX
unsigned short的最大值
INT_MAX
int最大值
INT_MIN
int最小值
UNIT_MAX
unsigned int 的最大值
LONG_MAX
long的最大值
LONG_MIN
long的最小值
ULONG_MAX
unsigned long的最大值
LLONG_MAX
long long的最大值
LLONG_MIN
long long的最小值
ULLONG_MAX
unsigned long long的最大值
 

C++常用数据类型

数据类型
类型说明符
位数
取值范围
备注
整形
int
32
-2147483648~ +2147483648
 
短整型
short int
16
-32767~++32767
 
长整型
long int
32
-2147483648~ +2147483648
 
单精度浮点型
float
32
-3.4E-38~+3.4E+38
精度6~7位
双精度浮点型
double
64
1.7E-308~+1.7E308
 
字符型
char
8
-128~+127
 
宽字符型
wchar
 
 
 
字符串
string
 
 
 
 /
long double
12*8
 
 
 /
long long
64
 
 

小结:

#include <iostream>
#include <cmath>
#include <iomanip>      //控制符头文件
using namespace std;

int main()
{
    //控制cout显示精度
    //1、强制以小数的方式显示
    cout << fixed;
    //2、控制显示精度
    cout << setprecision(2);
    //输出double类型数据
    double doublenum =100.0/3.0;


    cout<< doublenum *1000000 <<endl;
    return 0;
}

 

>结果:33333333.33
 

2、example1:

#include <iostream>
#include <iomanip>      //控制符头文件
using namespace std;


int main()
{
    double a=272;
    double b=250;
    double c=240;
        
    cout <<left;     //左对齐
    cout<<setfill('_')  //中间填充
    cout<<  setw(8)<<a <<  //seew(8)表示间隔8个字符
            setw(8)<<b<<
            setw(8)<<c<<endl;
    return 0;
}

>运行结果:272_____250_____240_____

 
 

3、关于n++/n--和++n/--n

当两者单独出现的时候(除指针),两者一样
当出现下面情况:
int n=10;
if(++n >10){}

注:先运行++n,在运行比较

int n=10;
if(n++ >10){}

注:先运行比较,在运行n++

 

三、数组替代品

1、向量器vector:

  • 是一个快速的动态分配内存的数组,大小可以动态扩展,在运行阶段设置长度
  • 具有数组的快速索引方式
  • 可以插入和删除元素

1.1. 定义:

vector<double> vec1;
vector<string> vec2(5);//默认vec2分配5个空间
vector<int> vec3(20,998);//分配cec2公告20个元素,每个元素都是998

 

1.2. 常用操作:

clear()
移除容器中的所有数据
empty()
判断容器是否为空
size()
返回容器中元素的个数
[index] at(index)
返回索引为 index 的元素
erase(pos)
删除 pos 位置处的数据
erase(begin,end)
删除 (begin,end) 区间的数据
front()
返回第一个元素
insert(pos,elem)
pos 位置处插入一个元素
pop_back()
删除最后一个元素
push_back(elem)
在容器末尾插入一个元素
resize(num)
重新设置容器大小
begin() end()
返回容器首尾元素怒的迭代器
swap        
与另一个vector交换数据
max_size
得到vector最大可以是多大
capacity      
当前vector分配的大小
resize       
改变当前使用数据的大小,如果它比当前使用的大,者填充默认值
reserve     
  改变当前vecotr所分配空间的大小
rbegin       
将vector反转后的开始指针返回(其实就是原来的end-1)
rend         
将vector反转构的结束指针返回(其实就是原来的begin-1)
建议使用场景:
1、开始就知道元素的数量
2、对数据的索引和随机访问频繁
3、插入和删除大多数在尾端
 

2、array

 
#include <iostream>
#include <array>

using namespace std;
int main()
{
        /**定义数组*/
       array<int,5> value_vec_daughter_baseinfos;
        /**数组赋值*/
    value_vec_daughter_baseinfos[0] = 80;
    value_vec_daughter_baseinfos[1] = 15;
    value_vec_daughter_baseinfos[2] = 15;
    value_vec_daughter_baseinfos[3] = 11;
    value_vec_daughter_baseinfos[4] = 11;
    value_vec_daughter_baseinfos[5] = 21;
}

 

 
  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值