C
文章平均质量分 90
精通hello_world
这个作者很懒,什么都没留下…
展开
-
内存测试用例memtester4.3.0
memtester-4.3.0memtester-ARMint test_stuck_address(bufa, count);(√ ) 先全部把地址值交替取反放入对应存储位置,然后再读出比较,重复2次(官网的重复了16次):测试address busint test_random_value(bufa, bufb, count);(√ )等效test_random_compar原创 2021-08-22 22:52:46 · 1613 阅读 · 2 评论 -
栈帧详解ebp、esp
一. 理解栈帧栈帧是什么,我们基本的理解是栈帧是栈帧也叫过程活动记录,是编译器用来实现过程/函数调用的一种数据结构。通俗来说栈帧就时C语言函数在调用的过程中的调用原理,就是当我们执行一个函数操作的时候,它的内部是如何实现的呢。二 .关于栈帧的背景知识寄存器第一个寄存器ebp,基址寄存器,也叫做栈底寄存器。第二个寄存器esp,是栈顶寄存器。第三个寄存器pc指针,也叫做程序计数器,它永远指向当前指令的下一条指令。计算机运算的基本过程取指令–分析指令–执行指令但程序执行的过程中,p原创 2021-04-11 18:42:04 · 11625 阅读 · 1 评论 -
C语言文件 open函数和fopen函数
open头文件:#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>定义函数:int open(const char * pathname, int flags);int open(const char * pathname, int flags, mode_t mode);函数说明:**参数 pathname :**指向欲打开的文件路径字符串.参数flags:O_RDONLY原创 2020-12-09 13:14:11 · 2027 阅读 · 0 评论 -
C语言回调函数代码解析
1. 什么是回调函数?回调函数,光听名字就比普通函数要高大上一些,那到底什么是回调函数呢?恕我读得书少,没有在那本书上看到关于回调函数的定义。我在百度上搜了一下,发现众说纷纭,有很大一部分都是使用类似这么一个场景来说明:A君去B君店里买东西,恰好缺货,A君留下号码给B君,有货时通知A君。感觉这个让人更容易想到的是异步操作,而不是回调。另外还有两句英文让我印象深刻:1) If you call me, I will call you back; 2) Don’t call me, I will call y原创 2020-12-03 15:29:02 · 149 阅读 · 0 评论 -
Linux——GDB调试基本命令
GDB调试步骤使用gdb调试时,需要在编译时使用-g参数g++ -g test.cpp -o testgdb test常用命令:start #开始调试,停在第一行代码处,(gdb)startl #list的缩写查看源代码,(gdb) l [number/function]b <lines> #b: Breakpoint的简写,设置断点。(gdb) b 10b <func原创 2020-10-29 11:17:38 · 170 阅读 · 0 评论 -
C++中NULL和nullptr的区别
C++中NULL和nullptr的区别一、C程序中的NULL在C语言中,NULL通常被定义为:#define NULL ((void *)0)所以说NULL实际上是一个空指针,如果在C语言中写入以下代码,编译是没有问题的,因为在C语言中把空指针赋给int和char指针的时候,发生了隐式类型转换,把void指针转换成了相应类型的指针。int *pi = NULL;char *pc = NULL;二、C++程序中的NULL但是问题来了,以上代码如果使用C++编译器来编译则是会出错的,因为C++是转载 2020-10-20 10:53:08 · 123 阅读 · 0 评论