- 1、需要理解的表达式 计算机启动的时候,硬件将要调用首地址为0位置的子例程,表达式如下 (*(void (*)())0)(); 2、解释 我们知道void (*f)() f是指向返回值为void类型的函数 因此,(void (*)())表示指向返回值为void类型的函数的指针的类型强制... 1、需要理解的表达式 计算机启动的时候,硬件将要调用首地址为0位置的子例程,表达式如下 (*(void (*)())0)(); 2、解释 我们知道void (*f)() f是指向返回值为void类型的函数 因此,(void (*)())表示指向返回值为void类型的函数的指针的类型强制...
- C语言中的Extern用法网上有很多帖子问C语言中Extern的用法,而且回答的详细程度各尽不同. 所以我就像写一篇博文来谈谈我对extern的看法,不一定十分恰当,只当大家共勉.在具体到Extern的用法之前,有两个概念必须要能分清楚:声明(Declaration)和定义(Definition)之间的区别. 声明一个变量只是宣布这个变量的属性,也就是说告诉编译器这个变量时什... C语言中的Extern用法网上有很多帖子问C语言中Extern的用法,而且回答的详细程度各尽不同. 所以我就像写一篇博文来谈谈我对extern的看法,不一定十分恰当,只当大家共勉.在具体到Extern的用法之前,有两个概念必须要能分清楚:声明(Declaration)和定义(Definition)之间的区别. 声明一个变量只是宣布这个变量的属性,也就是说告诉编译器这个变量时什...
- 1、函数指针回调解释 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数 2、代码实现 #include <stdio.h> int sub(int a, int b); int sub1(int a, int b, int ... 1、函数指针回调解释 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数 2、代码实现 #include <stdio.h> int sub(int a, int b); int sub1(int a, int b, int ...
- 1、问题 看到代码宏里面很多##__VA_ARGS__不知道什么意思 2、直接写测试代码 #include <stdio.h> #define my_printf(x) printf(#x" is %d\n", x)#define my_printf1(x) printf("value is %d\n", x##x)#defi... 1、问题 看到代码宏里面很多##__VA_ARGS__不知道什么意思 2、直接写测试代码 #include <stdio.h> #define my_printf(x) printf(#x" is %d\n", x)#define my_printf1(x) printf("value is %d\n", x##x)#defi...
- atoi()函数 #include <stdio.h>#include <stdlib.h> int main (){ int i; char buffer[256]; printf ("Enter a number: "); fgets (buffer, 256, stdin); i = atoi (buffer); printf ("The ... atoi()函数 #include <stdio.h>#include <stdlib.h> int main (){ int i; char buffer[256]; printf ("Enter a number: "); fgets (buffer, 256, stdin); i = atoi (buffer); printf ("The ...
- 1 问题 去掉https链接的默认443端口 2 代码实现 #include <stdio.h>#include <string.h>#include <stdlib.h> #define BOOL int#define TRUE 1#define F... 1 问题 去掉https链接的默认443端口 2 代码实现 #include <stdio.h>#include <string.h>#include <stdlib.h> #define BOOL int#define TRUE 1#define F...
- 队列 一、什么是队列 队列同样是一种特殊的线性表,它和栈的阉割方式不一样。它的插入只允许在队尾进行,它的删除只允许在队头进行。因此它有先进先出的特性(FIFO)。 队列和我们日常排队是类似的,相比日常排队,队列是严格禁止插队的。我们可以通过下图来理解队列: 一个队列的第一个元素被称为队头,队列的最后一个元素被称为队尾。队列中最常用的两种操作就是入队和出队,也... 队列 一、什么是队列 队列同样是一种特殊的线性表,它和栈的阉割方式不一样。它的插入只允许在队尾进行,它的删除只允许在队头进行。因此它有先进先出的特性(FIFO)。 队列和我们日常排队是类似的,相比日常排队,队列是严格禁止插队的。我们可以通过下图来理解队列: 一个队列的第一个元素被称为队头,队列的最后一个元素被称为队尾。队列中最常用的两种操作就是入队和出队,也...
- 队列 一、什么是队列 队列同样是一种特殊的线性表,它和栈的阉割方式不一样。它的插入只允许在队尾进行,它的删除只允许在队头进行。因此它有先进先出的特性(FIFO)。 队列和我们日常排队是类似的,相比日常排队,队列是严格禁止插队的。我们可以通过下图来理解队列: 一个队列的第一个元素被称为队头,队列的最后一个元素被称为队尾。队列中最常用的两种操作就是入队和出队,也... 队列 一、什么是队列 队列同样是一种特殊的线性表,它和栈的阉割方式不一样。它的插入只允许在队尾进行,它的删除只允许在队头进行。因此它有先进先出的特性(FIFO)。 队列和我们日常排队是类似的,相比日常排队,队列是严格禁止插队的。我们可以通过下图来理解队列: 一个队列的第一个元素被称为队头,队列的最后一个元素被称为队尾。队列中最常用的两种操作就是入队和出队,也...
- 栈 一、什么是栈 栈是一种特殊的线性表,我们可以认为栈是一种阉割版的线性表。它的插入、删除操作只能在栈顶进行。因此造就了它后进先出(LIFO)的特征。 在生活中有很多栈的例子,比如平时吃的冰糖葫芦,我们需要先吃掉上面的才能吃下面的(虽然不是这样,但是希望大家配合一下)。又比如我们脱衣服,要把外面的衣服脱了才能脱里面的衣服。 我们可以看一下下面的图片: ... 栈 一、什么是栈 栈是一种特殊的线性表,我们可以认为栈是一种阉割版的线性表。它的插入、删除操作只能在栈顶进行。因此造就了它后进先出(LIFO)的特征。 在生活中有很多栈的例子,比如平时吃的冰糖葫芦,我们需要先吃掉上面的才能吃下面的(虽然不是这样,但是希望大家配合一下)。又比如我们脱衣服,要把外面的衣服脱了才能脱里面的衣服。 我们可以看一下下面的图片: ...
- 目录 作用域 代码块作用域 文件作用域 原型作用域 函数作用域 链接属性 存储类型 总结 作用域 当变量在程序中的某个部分被声明时,它只有在程序的一定区域才能被访问。这个区域由标识符的作用域(scope)决定。标识符的作用域就是程序中该标识符可以被使用的区域。例如,函数的局部变量的作用域局限于该函数的函数体。 编译器可以确认4种不同类型... 目录 作用域 代码块作用域 文件作用域 原型作用域 函数作用域 链接属性 存储类型 总结 作用域 当变量在程序中的某个部分被声明时,它只有在程序的一定区域才能被访问。这个区域由标识符的作用域(scope)决定。标识符的作用域就是程序中该标识符可以被使用的区域。例如,函数的局部变量的作用域局限于该函数的函数体。 编译器可以确认4种不同类型...
- 学习C语言,我们永远绕不开的就是指针,指针是一项伟大的发明,但是它给我们的理解也造成了困难。下面是我对变量、指针变量等的一些简单的思考。 变量 谈起变量,或许我们都不屑一顾,可是认真一想,发现坏了,变量到底是个啥?是一个容器?是一个地址的名字?还是? 关于变量,我们是可以把它形象地理解为一个容器,它可以存储一定的值。(事实上,变量就是用名字来代替地址而已,变量代替的地... 学习C语言,我们永远绕不开的就是指针,指针是一项伟大的发明,但是它给我们的理解也造成了困难。下面是我对变量、指针变量等的一些简单的思考。 变量 谈起变量,或许我们都不屑一顾,可是认真一想,发现坏了,变量到底是个啥?是一个容器?是一个地址的名字?还是? 关于变量,我们是可以把它形象地理解为一个容器,它可以存储一定的值。(事实上,变量就是用名字来代替地址而已,变量代替的地...
- 为什么要总结排序算法: 由于时而要用到排序的思想,这里慢慢总结吧,以前也看的不少,但是荒废久了,也就忘得差不多了,这里贴出供需要的人看吧。互联网虽好,但有时候资源良莠不齐,看的也是头疼,不如总结来供自己查阅。 定位:排序是一种重要的,基本的算法。 1、冒泡(起泡)法排序(2018/06/04 pm 17:20): 基本思路:每次将相邻的两个数比较,将小的调到前头。若有6个数:... 为什么要总结排序算法: 由于时而要用到排序的思想,这里慢慢总结吧,以前也看的不少,但是荒废久了,也就忘得差不多了,这里贴出供需要的人看吧。互联网虽好,但有时候资源良莠不齐,看的也是头疼,不如总结来供自己查阅。 定位:排序是一种重要的,基本的算法。 1、冒泡(起泡)法排序(2018/06/04 pm 17:20): 基本思路:每次将相邻的两个数比较,将小的调到前头。若有6个数:...
- const介绍 const是一个C语言(ANSI C)的关键字,具有着举足轻重的地位。它限定一个变量不允许被改变,产生静态作用。使用const在一定程度上可以提高程序的安全性和可靠性。另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一定帮助。另外CONST在其它编程语言中也有出现,例如Pascal、C++、PHP5、B#.net... const介绍 const是一个C语言(ANSI C)的关键字,具有着举足轻重的地位。它限定一个变量不允许被改变,产生静态作用。使用const在一定程度上可以提高程序的安全性和可靠性。另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一定帮助。另外CONST在其它编程语言中也有出现,例如Pascal、C++、PHP5、B#.net...
- 如何快速学会单片机编程并应用? 先上一些参考资料,主要来源知乎: 1 -怎样学会单片机?- 2 -arduino、arm、树莓派、单片机四者有什么不同?- 3 -单片机可以替代PLC么?- 4 -单片机有没有必要用汇编讲?- 5 -相关课程- 单片机和C语言,是自动化(机器人)学科重要的基础内容。 如果对机器人感兴趣,可参考机器人工程师学习计划。 课程学习动机~Why?为什么... 如何快速学会单片机编程并应用? 先上一些参考资料,主要来源知乎: 1 -怎样学会单片机?- 2 -arduino、arm、树莓派、单片机四者有什么不同?- 3 -单片机可以替代PLC么?- 4 -单片机有没有必要用汇编讲?- 5 -相关课程- 单片机和C语言,是自动化(机器人)学科重要的基础内容。 如果对机器人感兴趣,可参考机器人工程师学习计划。 课程学习动机~Why?为什么...
- 转发博文背景: 在项目中用到了下面的知识:数据都是R+jI 的复数形式,首先要用CORDIC算法将数据转换成Ae^(jωt+φ) 形式。一句话就引出了一个知识点,这篇博文来总结这种功能的CORDIC算法。 向量模式的Cordic算法虽然解决的是从直角坐标到极坐标的转换,但是和上述需求不谋而合。 前人栽树,后人乘凉。这里仍然借鉴好的博文。 博文地址:https://ww... 转发博文背景: 在项目中用到了下面的知识:数据都是R+jI 的复数形式,首先要用CORDIC算法将数据转换成Ae^(jωt+φ) 形式。一句话就引出了一个知识点,这篇博文来总结这种功能的CORDIC算法。 向量模式的Cordic算法虽然解决的是从直角坐标到极坐标的转换,但是和上述需求不谋而合。 前人栽树,后人乘凉。这里仍然借鉴好的博文。 博文地址:https://ww...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢
2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考
2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本
2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签