
C
影帝sunny
无奈的时候,尽管前行
展开
-
安装protobuf-c遇到的问题
configure: error: Package requirements (protobuf >= 2.6.0) were not met: No package ‘protobuf’ found Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the enviro原创 2021-05-21 16:51:22 · 2102 阅读 · 0 评论 -
do{}while()
do确保{}的内容肯定被执行,while(0)确保内容只执行一次; 1,定义宏,原来我会用宏定义定义一些简单的函数,但是阅读起来不友好,且复杂,可以采用该办法定义。 #define ERRCODE(code) do{char s[256]; strcpy(s,errCode(code));printf(“%s\n”,s);}while(0) 2,控制逻辑,在一些强制跳转的地方常常用到goto,但是goto的做法使得代码不容易读,且有时候在面对函数正常执行到最后时候的处理比较麻烦,可以采用: int.原创 2021-05-21 16:49:00 · 417 阅读 · 0 评论 -
protobuf
protobuf是古狗在08年出的将数据序列化和反序列化库,跨平台跨语言。现在proto3和proto2还是有一些不一样的,proto3支持更多语言和功能同时舍弃了一些复杂的语法,更强调约定而弱化了语法,对快速编写proto有很大帮助。 这也是我在原单位一直推崇的一种设计,将所有产品共有,相似的地方进行统一和实现跨语言跨平台,特别是协议和算法,目前这种设计方式有个新名词叫“中台”—-相对于前台和后台来说的。 【安装protobuf】 1,https://github.com/protocolbuffers原创 2021-05-21 16:47:58 · 462 阅读 · 0 评论 -
c实现多态 – 基于虚函数表
以前经常在想面向对象中的多态问题,用c实现不就是一个函数的问题么,感觉也没什么大惊小怪的,后来慢慢的意识到其实在java中多态解决的问题是分离的问题,上层业务和底层方法实现的一个完全分离,在语言上讲是源码编译期依赖和运行期依赖的一种分离,在java中随着对象和方法的增加,业务层可以独立开发,独立部署,一个变化不会影响另一个变化,且编译期不会出错,直到运行期时进行方法绑定执行才会报错,而之前我用c实现的多态是一个在编译期就要绑定方法,并不是运行期,这样也达不成分层的效果,所以要实现分层就要借助于虚函数表。原创 2021-05-21 16:46:37 · 202 阅读 · 0 评论 -
C实现小顶堆----基于数据流中找出一段数据的最小值
转载:http://62.234.110.144:8991/2019/07/20/c%E5%AE%9E%E7%8E%B0%E5%B0%8F%E9%A1%B6%E5%A0%86-%E5%9F%BA%E4%BA%8E%E6%95%B0%E6%8D%AE%E6%B5%81%E4%B8%AD%E6%89%BE%E5%87%BA%E4%B8%80%E6%AE%B5%E6%95%B0%E6%8D%AE%E7%9A%84%E6%9C%80%E5%B0%8F%E5%80%BC/ #include <stdio.h原创 2021-05-21 16:31:13 · 206 阅读 · 0 评论