欢迎来到CJY的博客|

wenli7363

园龄:3年3个月粉丝:7关注:6

随笔分类 -  C++

NULL和nullptr
摘要:0 前言 虽然这两个东西的值都是 空值,(0X0000),但是不是同一东西 1 正文 NULL是int类型的,nullptr是std::nullptr_t类型的,所以这两个做参数的时候,其实会发生重载 建议指针能用nullptr的地方就用nullptr
21
0
0
C++动态内存分配/malloc/new
摘要:0 前言 这部分确实是面试老八股了,不过我还是记录一下 1 内存分区 在C语言中,将内存分为程序代码区+数据区,其中数据区又分为静态存储区和动态存储区 在C++中,分为五种: 动态存储区: 栈区:存放局部变量,由编译器自动分配释放,程序员不能操作 堆:由程序员使用malloc/new申请,用free
45
0
0
C++未定义行为
摘要:0 前言 未定义行为(Undefined Behavior)是指语言标准未做规定的行为。同时,标准也从没要求编译器判断未定义行为,所以这些行为有编译器自行处理,在不同的编译器可能会产生不同的结果,又或者如果程序调用未定义的行为,可能会成功编译,甚至一开始运行时没有错误,只会在另一个系统上,甚至是在另
199
0
0
为什么C++中不能将数组的内容拷贝给其他数组作为初始值,也不能用数组给其他数组赋值
摘要:0 前言 来自primer的3.5部分 以下写法是有问题的 int a[] = {0,1,2} int a2[] = a; // 错误,不允许使用一个数组初始化另一个数组 a2 = a; // 错误:不能把一个数组赋值给另一个数组 有些编译器支持上面的操作,但是书上说这属于非标准功能,是编译器扩展
121
0
0
关于链接性
摘要:链接性(linkage)是指程序中不同部分之间符号(如变量、函数、类等)的可见性和可访问性的属性。在 C++ 中,主要有三种链接性:外部链接性(external linkage)、内部链接性(internal linkage)和无链接性(no linkage)。 外部链接性(external lin
45
0
0
理解指针的定义
摘要:没想到我大四了有时候还弄不懂指针。。。 0 前言 众所周知,指针的定义如下: int* p,这里*的空格位置,怎么写是无所谓的。 注意,对指针的定义的理解: 0. 指针 = 地址, 我们常说的指针其实是指针变量 首先看见*,应当认为这是一个指针类型。 前面的类型是指针所指向地址的类型。 通过指针指向
39
0
0
带参宏定义与函数的区别
摘要:函数调用时,会先计算参数中表达式的值,但是宏只会做内容替换,不会计算 函数调用时在程序运行时进行的,宏展开是在编译阶段执行的 宏的参数是没有类型的,只是一个符号 宏每展开一次,源代码就会增多一次(因为在编译的时候进行了替换)。函数调用不会有这个问题 宏展开只占用编译时间,函数调用占用运行时间(分配内
33
0
0
关于gets()函数 error: 'gets' was not declared in this scope; did you mean 'fgets'
摘要:关于gets函数 有一段时间没有写算法了,今天重新写一道已经AC的题发现不通过。 发现如下报错:error: 'gets' was not declared in this scope; did you mean 'fgets'? 也就是说不支持使用gets函数了 请教了别人,应该是因为这个函数不安
1014
0
0
点击右上角即可分享
微信分享提示
深色
回顶
收起