C++基础

C++基础笔记


###基本语法

  1. “#include”预处理指令 引入某个文件的作用
    “#include”引入自己创建的要加入双引号 并且加上 .h

  1. 以下三种方式功能一样
    using namespace std;
    using std::cout;
    std::cout <<"xxx";

  1. 语法区别
    unsigned 无符号的 不能存在负号
    long long 类型 更大的整数值 long double 类型 更大的浮点数数值
    E表示法 3.4e9和3.4e+9一样 代表 3.4 x 1000000000

  1. 特殊关键字
    auto 可以自动判断类型 比如 auto a = ‘a’;

  1. 类型
    字符串 其实是用 char[]代替的
    \0表示字符结束 或者 用 char a[] = “baidu.com” ;表示,这个时候字符串长度是9 字符数组长度是10,因为还有一个默认的\0
    如果一段字符串太长,可以分开多个双引号间隔使用,c++自动拼接,比如:“baidu” “.com”
    c++也有string类型可以使用,需要前面引入下string类型 就c#一样可以使用了

  1. 方法
    strlen() 表示取得字符串长度
    strcmp(数组1,数组2) 比较两个数组内容是否相等,0代表相等,1代表不等

  1. 内存和指针
    指针的定义 int* p = &5;
    解指针 (p)
    空指针定义
    1. int
    p1 = 0;
    2. int
    p2 = NULL;
    3. int* p3 = nullptr; 这种方式可以转换任意类型的指针类型,推荐
    4. int* p4 = new int; *p4 = 100; delete *p4; 注意这种指针一定要记得释放内存,否则会永久占用内存地址
    指针和数组关系
    数组其实就是一个指针,所以说比较两个数组是否相等,即便里面的值是一样的,结果也是0,就是false的意思,因为比较的其实是指针。所以使用 strcmp(数组1,数组2) 去比较两个数组的内容是否相等,0代表相等,非0为不相等

  1. 创建数组
    • 直接创建数组 int array2[4]{1,2,3,4}; 该方式数组之间不能相互赋值
    • 指针创建数组 int* p = new int[]; p[0] = 50;
    • 模板类array array<int,9> a1 = { 1,1,2,3,4,5,6,8}; 该方式数组之间可以相互赋值

  1. 循环
    for循环和c#一致
    while循环和c#一致

10.类型别名

  • 使用宏定义实现,宏的名字放在前面,后面是类型
      #define END return 0; 
      #define UString string
    
    没有太多意义,就是使用END 代替后面的内容
  • 使用 typedef 定义类型别名,类型放在前面,后面是类的别名
    typedef  string UString;
  • 区别
    “#define” 可以给任意类型定义别名
    typedef 只能给类型定义别名
    “#define” 定义类似string这种类型是不需要 分号结尾的
    typedef 定义类似string这种类型是需要 分号结尾,否则报错
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

能不写代码么

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值