C++
喵小苡♡
SCUTer─=≡Σ(((つ•̀ω•́)つ我会更好的,加油呀!
(~ ̄▽ ̄)~
展开
-
拿出小本本记一下C++指针和引用的混淆点
当年这里学得乱七八糟,现在需要反复康康,遇到问题就会补进来噢。 指针 // int* ptr = arr; 等价于 int*ptr = &arr[0]; // int ar[] = &arr[1]; 将arr[1]的地址,赋值给ar[],即 &ar[0] = &arr[1], ar[]以arr[1]为首地址 void fun(int* ptr, int a...原创 2020-05-05 19:30:10 · 248 阅读 · 0 评论 -
C++预处理
预处理有哪些呢 文件包含条件编译宏定义 什么时候使用预编译 总是使用不经常改动的大型代码体 程序由多个模块组成,所有模块都使用一组标准的包含头文件和相同的编译选项,这样可以将所包含文件编译为一个预编译头 宏定义 #define 宏名(参数表) 字符串 宏名 参数表之间没有空格 #define swap(x, y) (x)=(x) + (y); (y...原创 2020-03-22 11:01:45 · 109 阅读 · 0 评论 -
C++ new delete malloc free
(一)new和delete是如何实现的 使用new表达式的时候,实际执行了3步操作: 第一步new表达式调用operator new(或者operator new[])标准库函数。 该函数分配一个足够大的原始的未命名的内存空间 以便存储特定类型的对象。 第二步编译器调用相应的构造函数以构造这些对象,并为其传入初始值。 第三步对象被分配了空间,并完成构造,返回一个指向该对象的指针。 使用dele...原创 2020-03-22 10:44:00 · 207 阅读 · 0 评论 -
内存空间布局(Linux C++)
参考了一些书,欢迎指正,谢谢。 目录 5层空间布局 堆和栈的区别 5层空间布局 代码段:存放程序执行代码,可能包含一些只读的常数变量(如:字符串常量)。一个程序可以在内存中有多个副本。 初始化数据段:属于静态内存分配,位于可执行文件中。已初始化的全局变量、静态变量。 未初始化数据段:未初始化的全局变量,静态变量。 堆:存放进程运行中动态分配的内存段 栈:又称堆栈,存放局部变...原创 2020-03-22 10:40:50 · 394 阅读 · 1 评论 -
C++字符 · 字符串
char, char[], char*, string, const char[], const char*,容易混淆,就整理出来偶尔看看嘿嘿。 1. char 数据类型 字符:char类型的变量,只能容纳一个字符,以数字的形式存储在内存中。 char a= 'A'; cout << a << endl; // 输出A char asave = 65; ...原创 2020-03-22 10:29:46 · 785 阅读 · 1 评论 -
C++关键字
本文整理了我复习时容易混淆或不易记忆的关键字用法和注意事项。欢迎指正和讨论,谢谢。 目录 一、volatile 二、static【限定访问域,延长生命周期】 (1) static修饰局部变量(静态局部变量) (2) static修饰全局变量(静态全局变量) (3) static修饰函数 (4) static修饰类成员:静态成员变量 (5) static修饰类成员:静态成员函数 ...原创 2020-03-22 10:20:04 · 1331 阅读 · 0 评论 -
C++知识笔记
前言:最近在复习,参考了很多资料,随手把小知识点记录下来,没事儿看看。 文章目录C++ 和 C 区别i++ 和 ++i区别请写个函数在mian函数执行前先运行"零值比较"?同一类不同对象之间赋值与复制一. 对象之间的复制二. 对象之间的相互赋值特别说明:同一类不同对象可以互相赋值吗?C++ *&符号含义和关系strlen与sizeof的区别无符号数和有符号数比较 C++ 和 C 区别 ...原创 2020-03-22 09:53:28 · 280 阅读 · 0 评论