自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

轻松学C语言

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

  • 博客(798)
  • 收藏
  • 关注

转载 C++ 首超 Java,与 Python、C语言共角逐年度最佳编程语言奖!

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删最新的 TIOBE 12 月编程语言已发布,先来预测一波今年的年度编程语言大奖究竟会花落谁家吧?C++ 首超Java和上个月相比,12 月榜单中最大的变化莫过于 C++以0.12% 微弱的优势,凭借 11.94% 的市场份额首次超过了 11.82% 的 Java。其实在今年 6月,TIOB...

2022-12-10 18:00:31 156

转载 学生时代,你有遇到过像我这样理解C语言的吗?

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删今天我讲一下我个人对C语言的认识以及自己的理解,若有错误,还望指出,不甚感激。首先是C语言整体的脉络,C语言包括哪些东西?哪些部分需要着重理解?这是我经常问自己的两个问题。01基础性知识最基本的一些数据类型及其所占用的内存大小,还有一些基础的计算机常识,比如进制转换等,这些东西在对C语言有了一定的...

2022-12-09 18:00:01 130

转载 C语言灵魂拷问:++i为何比i++执行效率高!有何区别?

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删背景相信很多人遇到过这样的问题:printf("%d,%d",i++,++i);也纠结过这个问题,到底答案是什么。确没有一个参考的资料。唯一知道的是,几乎所有C语言教材都这么讲:i++就是先使用i的值再使i自身加一,而++i则是先使i自身加一,然后在使用i的值。出于对真理的追求。今天我们彻底弄明白...

2022-12-09 18:00:01 303

转载 谷歌开源替代 C++ 的编程语言:Carbon

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删谷歌工程师 Chandler Carruth 近日在多伦多举办的 CppNorth 大会上宣布①,正式开源谷歌内部打造的编程语言:Carbon,并称 Carbon 是 C++ 的继任者(目前处于实验性阶段)。Chandler 列举了当今流行编程语言演进的一些例子,比如:Java 到 Kotlin、...

2022-12-08 18:00:02 275

转载 腾讯大举退出美团!

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删11月16日,腾讯发布第三季度财报,同时表示将“分红式减持”美团。腾讯分派90.9%美团持股腾讯系中概股美股盘前多数下跌腾讯表示,将按合资格股东持有每10股股份获发1股美团B类普通股的基准,向股东以实物分派的方式宣派由本公司持有的约958,121,562股美团B类普通股的特别中期股息。腾讯表示,...

2022-12-08 18:00:02 269

转载 嵌入式软件分层框架设计,举个例子

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删前言为了能够使得产品得到更好的开发速度与以后更好的迭代和移植,框架分层是很有必要的。但如对于中小型项目严格遵循这些原则,势必会消耗过多精力去思考怎么设计系统,这是一个抉择的过程。一、框架分层是什么?在嵌入式架构中:一般分为硬件架构与软件架构。这里是嵌入式软件设计,也是大多数人接触的设计。所谓的分层...

2022-12-06 18:00:31 1096

转载 网站快速变灰色,几行代码就搞定了!

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删自从伟大的江爷爷走了后,全站和各个App的内容都变成了灰色,包括按钮、图片等等。这时候我们可能会好奇这是怎么做到的呢?有人会以为所有的内容都统一换了一个 CSS 样式,图片也全换成灰色的了,按钮等样式也统一换成了灰色样式。但你想想这个成本也太高了,而且万一某个控件忘记加灰色样式了岂不是太突兀了。其...

2022-12-06 18:00:31 280

转载 面向对象,C语言实现简单工厂模式,思路+代码

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删1、简介简单工厂方法定义一个用于创建对象的类,该类接受一个参数,通过参数决定创建不同的对象。GOF并没有把简单工厂方法定义为23种设计模式之一,可以认为简单工厂方法是工厂方法的简化形式。为了体现简单工厂方法和工厂方法的区别和联系,此处把简单工厂方法先单独讲一下。2、模拟场景假设你要生产电脑,电脑由...

2022-12-05 18:00:40 196

转载 C语言不是最好的,却是我最爱的~

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删以下为译文:虽然 C 语言并不是我所学的第一门语言,也不是我的最后一门语言,但是我仍然非常喜欢 C,当需要写程序时,我的第一选择还是 C。同时,我也会关注现代编程语言及其发展趋势,而且我还使用 Rust 编写了自己的业务爱好项目。那么,为什么我没有抛弃 C 而选择其他语言呢?我对于 C++的看法又...

2022-12-05 18:00:40 180

转载 89 个嵌入式相关概念,你懂几个?

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删01操作系统(Operating System,OS)是管理计算机硬件与软件资源的系统软件,同时也是计算机系统的内核与基石。操作系统需要处理管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。02shell...

2022-12-03 18:00:05 288

转载 这10个C语言技巧让初学者少走180天弯路!

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删技巧 1:不要使用“GOTO”语句二十几年前,当计算机编程尚处于起步阶段时,程序流程是由“GOTO”语句来控制。该类语句允许程序员对当前代码行断行,而直接进入另一个不同的代码段。列表1为简单的示例。列表1 使用GOTO语句编程语言终究开始引入了函数的概念,即允许程序对代码进行断行。如果已经完成,不...

2022-12-03 18:00:05 189

转载 程序员日均写7行代码被开除,公司:正常员工每天200行

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删根据前不久CSDN发布的《2021-2022中国开发者调查报告》显示,大部分程序员平均每天会写200行左右的代码。那么代码的数量能衡量一个程序员的水平吗?事实上,用代码的多少来评估程序员的业务能力是否达标,并不是客观的。在此前的一起劳动争议案件中,一科技公司的算法工程师便在试用期被公司开除。而起因...

2022-12-02 18:00:43 232

转载 C++最佳实践 | 代码风格

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删C++最佳实践:1. 工具2. 代码风格(本文)3.安全性4.可维护性5.可移植性及多线程6.性能7.正确性和脚本代码风格代码风格最重要的是一致性,其次是遵循C++程序员习惯的阅读风格。C++允许任意长度的标识符名称,因此在命名时没必要非要保持简洁,建议使用描述性名称,并在风格上保持一致...

2022-12-02 18:00:43 448

转载 史上最污技术解读,我竟然秒懂了

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删假设你是个妹子,你有一位男朋友,于此同时你和另外一位男生暧昧不清,比朋友好,又不是恋人。你随时可以甩了现任男友,另外一位马上就能补上。这是冷备份。假设你是个妹子,同时和两位男性在交往,两位都是你男朋友。并且他们还互不干涉,独立运行。这就是双机热备份。假设你是个妹子,不安于男朋友给你的安全感。在遥远...

2022-12-01 18:00:45 117

转载 C语言函数返回 1 和返回 0 哪个好?

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删基本上,没有人会将大段的C语言代码全部塞入 main() 函数。更好的做法是按照复用率高、耦合性低的原则,尽可能的将代码拆分不同的功能模块,并封装成函数。C语言代码的组合千变万化,因此函数的功能可能会比较复杂,不同的输入,常常产生不同的输出结果。1C语言函数的返回值C语言函数可以通过返回值表示输出...

2022-12-01 18:00:45 154

转载 C++最佳实践 | 工具

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删前言C++最佳实践: 支持Fork的编码标准文档本文档旨在收集对C++最佳实践所进行的协作性讨论,是《Effective C++》(Meyers)和《C++ Coding Standards》(Alexandrescu, Sutter)等书籍的补充。在讨论如何确保整体代码质量的同时,补充了一些...

2022-11-30 18:00:14 1644

转载 硬核!400 行代码实现一个虚拟机

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删我们都知道理工科类的大学专业,一般都会在大一选择教授 C 语言作为编程入门语言,我最初接触编程也是入的 C 语言的坑。课堂上写的程序跑在古老的绿色版 VC++6.0 上,实现简单的计算器功能,让我非常兴奋,之后更是接触C语言单片机编程,用的 Keil 编辑器。用编写的程序直接驱动LED灯、小电机、...

2022-11-30 18:00:14 1666

转载 C语言 #define 与 typedef 的区别与用法

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删在C语言编程中,typedef 和#define是最常用语句,可能很多工作过几年的工程师都没有去深究过它们的一些用法和区别。typedef的用法在C/C++语言中,typedef 常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,比如:typedef in...

2022-11-29 18:00:26 281

转载 绩效从C到S,分享渣渣程序员逆袭秘诀!

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删绩效面谈结束,从会议室出来,有一种不真实的感觉——这个季度我竟然拿了S?!要知道,上个季度和上上个季度,我的绩效是C。C在我司意味着什么你们知道吗?拿3次C就意味着严重不胜任,公司就会让我收拾收拾包袱滚蛋。而我,那时候,离第三个C,就只差一个季度了。回过头来看,还是很感慨的,我真的在三个月的时间里...

2022-11-29 18:00:26 153

转载 哪款 Linux 才是更好的 CentOS 替代品?

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删AlmaLinux 是基于 RHEL 的企业级 Linux 发行版。以下是选择 AlmaLinux 作为 CentOS 替代方案的一些原因。CentOS 将于 2024 年 6 月到期。截至 2022 年,它为世界各地的许多服务器支持,事实上,早在 2010 年,它就是最受欢迎的 Linux 服务...

2022-11-28 18:00:10 1440

转载 哪些著名软件是用C、C++编写的?

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删经常跟大家谈论C/C++是多么的厉害,但总是耳听为虚,还需眼见为实,那如何做到眼见为实呢?当然还是要从"业绩"出发,那么今天就跟大家找了一些内容,看看有哪些优秀的软件作品是C,C++的杰作呢?正文部分:1、操作系统(OS)Microsoft Windows :汇编 -> C -> C+...

2022-11-28 18:00:10 1442

转载 图文详解STM32单片机远程升级

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删1、需要两份程序BootLoader和App程序,两份程序均可以通过jlink下载,只需要将下载地址修改一下即可:2、在BootLoader中的跳转函数#defineAPP_FLASH_ADDR0x8008000iap_load_app(APP_FLASH_ADDR);//#incl...

2022-11-26 18:00:13 371

转载 熟悉又陌生的arm 编译器详解(armcc/armclang)

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删arm编译器学习首先来了解一下编译器,其通常分为三个部分:前端+优化器+后端。前端:词法、语法和语义分析,将源代码转化为抽象语法树,生成中间代码优化器:对得到的中间代码进行优化,使得代码更加高效,后端:将优化的代码转化为针对各自平台的机器代码。再通俗地说编译器的工作就是:源代码->预处理-&...

2022-11-26 18:00:13 1091

转载 【C语言】彻底搞懂内存屏障与volatile

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删最有价值的写在最前面内存屏障与 volatile 是高并发编程中比较常用的两个技术,无锁队列的时候就会用到这两项技术。然而这两项技术涉及比较广的基础知识,所以比较难以理解,也比较不容易解释清楚。关于内存屏障和 volatile 网上有相当多的资料,但是总感觉还是不够系统和深入。当然由于我自身水平有...

2022-11-25 18:00:25 742 1

转载 一文读懂 | Linux 中的各种栈:进程栈 线程栈 内核栈 中断栈

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删栈是什么?栈有什么作用?首先,栈 (stack) 是一种串列形式的数据结构。这种数据结构的特点是后入先出 (LIFO, Last In First Out),数据只能在串列的一端 (称为:栈顶 top) 进行 推入 (push) 和 弹出 (pop) 操作。根据栈的特点,很容易的想到可以利用数组,...

2022-11-25 18:00:25 463

转载 几十个Shell分析日志文件脚本!

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删收集,整理一些服务器日志分析命令,可以用来分析自己网站服务器日志,看看网站的访问量。看看有没有黑阔搞破坏!大家可以试试!1、查看有多少个IP访问:awk'{print$1}'log_file|sort|uniq|wc -l2、查看某一个页面被访问的次数:grep"/index.php"...

2022-11-24 18:00:53 611

转载 5 个牛逼的算法设计,你知道几个?

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删1、分治法概念:将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之。思想策略:对于一个规模为n的问题,若该问题可以容易地解决(比如说规模n较小)则直接解决,否则将其分解为k个规模较小的子问题,这些子问题互相独立且与原问题形式相同,递归地解这些子问题,然后将各子问题的解...

2022-11-24 18:00:53 293

转载 C语言字符数组与字符串的使用详解

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删正文1、字符数组的定义与初始化字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。char str[10]={ 'I',' ','a','m',' ',‘h','a','p','p','y'};即把10个字符分别赋给str[0]到str[9]10个元素如果花括号中提供的字符个数大于数组...

2022-11-23 18:00:55 1631

转载 C语言字符串函数strcat | strcpy | strlen | strcmp的用法及原型

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删strcat(str1,str2)意为将字符串str2连接到字符串str1之后strcat用法如下#include<stdio.h>#include<string.h>intmain(){charsrc[99],dest[99];st...

2022-11-23 18:00:55 1802 1

转载 28 张图,一次性说清楚 TCP,速度

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删做IT相关的工作,肯定都离不开网络,网络中最重要的协议是TCP。无论是实际工作还是笔试面试,你看哪里能少得了TCP?我看过RFC中与TCP相关的文档,也看过linux中TCP相关的源码,也看过不少框架中的TCP相关的代码,对TCP是有点感觉了。一直想找个时间来分享下TCP相关的知识,如果大家有疑问...

2022-11-22 18:00:39 215

转载 UDP/TCP 包的大小限制知多少

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删一、MTU 简述 - 分包后数据包最大长度1、定义Maximum Transmission Unit(最大可传输单元) 的缩写,它的单位是字节。在*数据链路层*定义一个数据包穿过一个大的网络,它其间会穿过多个网络,每个网络的 MTU 值是不同的。这个网络中最小的 MTU 值,被称为路径 MTU...

2022-11-22 18:00:39 2926

转载 平衡二叉树 C语言代码实现

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删1.什么是平衡二叉树平衡二叉树,我们也称【二叉平衡搜索树/AVL】,树中任何节点的两个子树的高度最大差别为1,巴拉巴拉。。。(https://baike.baidu.com/item/AVL树/10986648?fr=aladdin)但是有个注意的点: 平衡二叉树的前提是 二叉排序树(https:...

2022-11-21 18:00:43 137

转载 让C语言源码可知自身函数的实际地址与大小

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删事情的起因大概是这样……在很久很久以前,我最早用的是MASM(Win32ASM)写程序,从平台兼容性、开发效率和规范等方面考虑,后来我义无反顾地转成了C、C++和C++++……主要是为了保持队形,但那真的是4个+当然也很顺手,不用像汇编那样,x86是一份代码,x64又大相径庭,再换成ARM那就没法...

2022-11-21 18:00:43 114

转载 CSON+CJSON,解析json数据更优雅?

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删前言json是目前最为流行的文本数据传输格式,特别是在网络通信上广泛应用,随着物联网的兴起,在嵌入式设备上,也需要开始使用json进行数据传输,那么,如何快速简洁地用C语言进行json的序列化和反序列化呢?当前,应用最广泛的C语言json解析库当属cJSON,但是,使用cJSON读json进行序列...

2022-11-19 18:00:56 344

转载 分享一个通用的嵌入式驱动层

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删C 语言面向对象编程的最佳实践一、前言以STM32为例,打开网络上下载的例程或者是购买开发板自带的例程,都会发现应用层中会有stm32f10x.h或者stm32f10x_gpio.h,这些文件严格来时属于硬件层的,如果软件层出现这些文件会显得很乱。使用过Linux的童鞋们肯定知道linux系统无法...

2022-11-19 18:00:56 244

转载 C# 11正式发布

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删C# 11 现已发布。公告称,“随着每个版本的发布,社区的参与度越来越高,贡献了从建议、见解和错误报告到整个功能实现的所有内容。这真的是每个人的 C#。”新版本中的一些亮点更新内容包括:UTF-8 字符串(UTF-8 String Literals)默认情况下,C# 字符串被硬编码为 UTF-16...

2022-11-18 18:00:14 851

转载 NSA:建议从 C/C++ 切换到内存安全语言

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删美国国家安全局(NSA)发布了一份指南,旨在帮助软件开发商和运营商预防和缓解软件内存安全问题。其鼓励组织将编程语言从 C 和 C++ 之类的语言转变为内存安全的替代语言 —— 即 C#、Rust、Go、Java、Ruby 或 Swift,以保护代码免受远程代码执行或其他黑客攻击。“NSA建议企业...

2022-11-18 18:00:14 139

转载 C语言回调函数,提升C技巧必备

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删一、函数指针在讲回调函数之前,我们需要了解函数指针。我们都知道,C语言的灵魂是指针,我们经常使用整型指针,字符串指针,结构体指针等int*p1;char*p2;STRUCT*p3;//STRUCT为我们定义的结构体但是好像我们一般很少使用函数指针,我们一般使用函数都是直接使用函数调用。...

2022-11-17 18:00:43 175 1

转载 程序如何运行,编译、链接、装入?

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删一、地址概念和程序如何运行在多道程序环境下,要使程序运行,必须先为之创建进程。而创建进程的第一件事,便是将程序和数据装入内存。如何将一个用户源程序变为一个可在内存中执行的程序,通常都要经过以下几个步骤:首先是要编译由编译程序(Compiler)将用户源代码编译成cpu可执行的目标代码,产生了若干个...

2022-11-17 18:00:43 535

转载 面试大全 | C语言高级部分总结,2.6万字长文

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删一、内存大话题1.0、内存就是程序的立足之地,体现内存重要性。1.1、内存理解:内存物理看是有很多个 Bank(就是行列阵式的存储芯片),每一个 Bank 的列就是位宽 ,每一行就是 Words,则存储单元数量=行数(words)×列数(位宽)×Bank的数量;通常也用 M×W 的方式来表示芯片的...

2022-11-16 18:00:01 312

空空如也

空空如也

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

TA关注的人

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