C++/C
Zhu_Zheng
这个作者很懒,什么都没留下…
展开
-
C的void *
C语言中void * 为 “不确定类型指针”,void *可以用来声明指针。如:void * a;(1)void *可以接受任何类型的赋值:void *a = NULL;int * b = NULL;a = b;//a是void * 型指针,任何类型的指针都可以直接赋值给它,无需进行强制类型转换我们可以认为void就是一张白纸可以在上班写任何类型的数值。(2)void *可以赋值给...转载 2019-03-05 14:07:12 · 1001 阅读 · 0 评论 -
C++使用new来创建一个对象,析构函数的调用?
(来自c++primer plus)如果创建的是静态存储类对象,则其析构函数将在程序结束时被自动调用。如果创建的是自动存储类对象,则其析构函数将在程序完成代码块时自动被调用。如果对象是new创建的,则它将在栈内存或自由存储区中,当使用delete来释放内存时,其析构函数将自动被调用。...原创 2019-03-04 14:42:48 · 4146 阅读 · 2 评论 -
C的动态内存分配到哪去了?
stack:由系统自动分配。 例如,声明在函数中一个局部变量 int b; 系统自动在栈中为b开辟空间heap:需要程序员自己申请,并指明大小,在c中malloc函数如p1 = (char *)malloc(10);在C++中用new运算符如p2 = (char *)malloc(10);但是注意p1、p2本身是在栈中。...转载 2019-03-05 22:46:34 · 529 阅读 · 0 评论 -
通过哈希表来判断两个程序的相似性!
对于两个C语言的源程序清单,用哈希表的方法分别统计两个程序中使用C语言关键字的情况,并最终按定量的计算结果,得出两份源程序清单的相似性。以下程序参考网上部分代码,经过修改成功运行通过,分享给大家!#include<iostream>#include<string.h>#include<fstream>#include<math.h>#in...原创 2019-03-07 22:40:19 · 3411 阅读 · 5 评论 -
C++的逗号运算符
在所有的运算符中,逗号(,)是优先级最低的。cata=17,240;被解释为(cata=17),240;//240不起作用cata=(17,240);cata被设置为240-逗号右边的表达式值。...原创 2019-03-11 22:36:13 · 257 阅读 · 0 评论 -
嵌入式C编程的代码优化小技巧
常用代码优化的方法优化永远是追求一种平衡,而不是走极端。1.合理使用RAM和ROM对于51内核的8位单片机:data:固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小。idata:固定指前面0x00-0xff的256个RAM,其中前128和data的128完全相同,只是因为访问的方式不同。idata是用类似C中的指针方式访问的。汇编中的语句...翻译 2019-07-30 08:46:49 · 1395 阅读 · 0 评论