自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 strlen PK sizeof

Q:为什么我们在开辟malloc一块字符数组空间的时候,经常调用 memset函数进行全部'\0'操作了?A:因为使用计算长度的strlen函数,printf函数遇到'\0'字符才会中止.防止内存越界.printf函数也是遇到'\0'字符才会结束哦.前面提到字符数组,在来小谈一会.字符数组到字符指针的过程,是退化,即前者退化为了后者,为什么这么说, 因为字符数组存储的信息,是比字符指针的信息多的,什么时候发生退化,函数传参的时候就会发生。

2024-04-26 19:03:19 1163 1

原创 隐藏于水面之下的extern

上面可知,C库是按照C语言的规则来编译代码的,当C库某一个头文件被CPP文件所include 的时候,就会原地展开,编译的时候,对这些函数的声明等就会按照CPP的规则来编译,当在链接阶段的时候,就会去寻找符号,但是发现找不到,一个是CPP的符号,一个是C的符号,不对应,所以就会报错。对于extern val 这样的语句,是声明变量的语句,表示这个变量在外部被定义。这样的语句,就是声明一个变量,其实不是,声明一个变量,表示这个变量是没有内存的,只是告诉编译器,我即将要有一个变量,但是不是现在就需要。

2024-04-14 15:30:22 956 1

原创 机会留给有准备的人,emplace_back也是一样

其实就一句话, emplace_back ( _Valty &&... _Val)留了一个心眼,这个心眼,使它在某一情况下放入vector的时候,变得高效<直接在vector内部调用构造函数。。原理就是可变参数+std::forward实现完美转发。调用构造函数,怎么调用,创建对象就会调用构造函数啊。这个类够简单吧,当我们创建age对象的时候,就会调用构造函数。like。

2024-04-10 20:27:11 363

原创 calloc和malloc的差异

带你了解calloc和malloc的区别

2024-01-29 15:32:46 376 1

原创 关于dlsym的总结

对于dlopen、dlsym,dlclose等这一些列的函数,可能大家几乎很少能用到,可能有的朋友见都没有见过,我也是在别的项目(sylar的hook模块)上遇到的,刚看到的时候,一头雾水,这是什么玩意儿?经过漫长的岁月,我终于了解一点了。

2024-01-24 15:50:44 2332

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除