随笔分类 -  c/cpp

摘要:ListNode* a1,n; a1类型是 ListNode* n 类型是 ListNode 所以*和变量名连着比较合理。 阅读全文
posted @ 2022-12-19 21:30 种树人 阅读(21) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/qq_51825761/article/details/125586439 /** 当数组不是全局变量时: 如果数组大小是变量(包括比如获取某个vector的size),则数组初始化为0时,元素的值也许不是0; 如果数组大小是常量,则数组初始化为0时,元素 阅读全文
posted @ 2022-09-18 16:21 种树人 阅读(48) 评论(0) 推荐(0) 编辑
摘要:void swap(int *a, int *b) { *a = (*a&~*b)|(*b&~*a); cout << *a << " " << *b <<endl; *b = (*a&~*b)|(*b&~*a); cout << *a << " " << *b <<endl; *a = (*a&~ 阅读全文
posted @ 2022-08-05 01:08 种树人 阅读(94) 评论(0) 推荐(0) 编辑
摘要:C++ vector 的size函数返回vector大小,返回值类型为unsigned int型,unsigned int的取值范围为0~2^32 -1。 vector A={}; 当容器A为空时,如果直接使用A.size()-1的话,会直接造成溢出,得到的结果并不是-1,而是一个很大的数。 所以为 阅读全文
posted @ 2022-05-27 11:53 种树人 阅读(738) 评论(0) 推荐(0) 编辑
摘要:https://www.programminghunter.com/article/4569180387/ 在C中当创建一个空类时,C就会默认的为这个类创建4个函数:默认的构造函数、析构函数、拷贝构造函数、以及赋值操作符。本文参考Effective C++介绍这几个函数。 1.函数的原型以及函数创建 阅读全文
posted @ 2022-04-14 11:25 种树人 阅读(476) 评论(0) 推荐(0) 编辑
摘要:有时候函数的返回类型的选择可以提高程序运行的效率,减少不必要的开销,有时候可能导致程序崩溃,一发不可收拾,下面介绍几种常见的函数返回类型(注意不是返回值类型) https://zhuanlan.zhihu.com/p/51182827 https://blog.csdn.net/weixin_405 阅读全文
posted @ 2022-04-03 18:41 种树人 阅读(136) 评论(0) 推荐(0) 编辑
摘要:换构造函数(conversion constructor function) 的作用是将一个其他类型的数据转换成一个类的对象。 当一个构造函数只有一个参数,而且该参数又不是本类的const引用时,这种构造函数称为转换构造函数。 转换构造函数是对构造函数的重载。 参考链接1 参考链接2 struct 阅读全文
posted @ 2021-12-04 17:36 种树人 阅读(163) 评论(0) 推荐(0) 编辑
摘要:#include <iostream> using namespace std; class Test { public: Test() { } Test(int) { } void fun() { } }; int main(void) { Test a(10); // 语句1 a.fun(); 阅读全文
posted @ 2021-12-04 16:08 种树人 阅读(158) 评论(0) 推荐(0) 编辑
摘要:#include <stdio.h> char *c[] = {"HELLO","NEW","WORLD","SAYHI"}; char **cp[]={c+3,c+2,c+1,c}; char ***cpp=cp; int main(void) { printf("%s\n",*cpp[2]); 阅读全文
posted @ 2021-08-06 17:25 种树人 阅读(53) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/u012397189/article/details/78784928 默认构造函数 首先,我们来看一下是什么是默认构造函数,如下面一段代码: 静态指针数组是定义了一些的Point指针,通过new的方式来使每个指针指向对象。动态指针数组是分配固定大小的连续 阅读全文
posted @ 2020-04-13 14:33 种树人 阅读(2129) 评论(0) 推荐(1) 编辑
摘要:给初始化为NULL的结构体指针赋值报错问题 https://bbs.csdn.net/topics/392560720 tmp指向null,使用 tmp就会报错,因为这代表要去0的地址取数据,0地址是不允许访问的,所以会报错,换成malloc后,系统会分配可使用的地址给tmp,所以 tmp就不会报错 阅读全文
posted @ 2020-04-04 22:24 种树人 阅读(1742) 评论(0) 推荐(0) 编辑
摘要:错误程序: 阅读全文
posted @ 2020-03-31 11:30 种树人 阅读(898) 评论(0) 推荐(0) 编辑
摘要:这个问题很重要!实际上前面讲那么多,其中有一个很重要的目的就是为了讲这个知识点。所谓初始化就是“第一次赋值”的意思。我们先来看一个程序: #include <stdio.h> int main(void) { int i; printf("i = %d\n", i); return 0; } 这里i 阅读全文
posted @ 2020-03-10 22:56 种树人 阅读(547) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/Antineutrino/article/details/6763722 阅读全文
posted @ 2020-02-29 15:01 种树人 阅读(129) 评论(0) 推荐(0) 编辑
摘要:原因,定义数组的时候使用变量来定义数组长度。 如下代码: int a = 10; char b[a]; //编译不报错 //char b[a] = "jfkd"; //报错,使用变量定义长度时,不可在定义时同时进行初始化赋值,需要在之后进行赋值 printf("b = %s, len = %d:%d 阅读全文
posted @ 2020-02-22 21:28 种树人 阅读(2504) 评论(0) 推荐(0) 编辑
摘要:Turbo C2.0 标准库提供了两个控制台格式化输入、 输出函数printf( ) 和 scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。 printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标准输入 设备(键盘)上读数据。下面详细介绍这两 阅读全文
posted @ 2020-01-19 16:20 种树人 阅读(874) 评论(0) 推荐(0) 编辑
摘要:https://www.imooc.com/qadetail/168807 1 //我觉得原本是double类型的cost精度那么高,非要转化为int型数据输出的时候肯定有问题,转换为二进制后cos//t这个内存数据可以很明显看出低32位全是0,而%d则只能截取到低32位,所以输出为0,然后在mai 阅读全文
posted @ 2018-08-10 00:07 种树人 阅读(397) 评论(0) 推荐(0) 编辑
摘要:C语言只有在定义字符数组的时候才能用“=”来初始化变量,其它情况下是不能直接用“=”来为字符数组赋值的,要为字符数组赋值可以用string.h头文件中的strcpy函数来完成。 例如: char a[10] = "123"; /*正确,在定义的时候初始化*/ char a[10]; a = "123 阅读全文
posted @ 2018-06-29 16:04 种树人 阅读(1171) 评论(0) 推荐(0) 编辑
摘要:#include <stdio.h> void Initialize (char * a, char * b) { a[0] = 'T'; a[1] = 'h'; a[2] = 'i'; a[3] = 's'; a[4] = ' '; a[5] = 'i'; a[6] = 's'; a[7] = ' 阅读全文
posted @ 2017-12-24 20:58 种树人 阅读(338) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示