C语言

关注476人关注
我要报错
  • 单片机常用的14个C语言算法,看过的都成了大神!

    算法(Algorithm)指计算机解题的基本思想方法和步骤。算法的描述是对要解决一个问题或要完成一项任务所采取的方法和步骤的描述,包括需要什么数据(输入什么数据、输出什么结果)、采用什么结构、使用什么语句以及如何安排这些语句等。通常使用自然语言、结构化流程图、伪代码等来描述算法。

  • C语言,动态展示经典排序算法

    以前也零零碎碎发过一些排序算法,但排版都不太好,又重新整理一次,排序算法是数据结构的重要部分,系统地学习很有必要。

  • 深度揭秘垃圾回收底层,这次让你彻底弄懂她

    我们知道手动管理内存意味着自由、精细化地掌控,但是却极度依赖于开发人员的水平和细心程度。如果使用完了忘记释放内存空间就会发生内存泄露,再如释放错了内存空间或者使用了悬垂指针则会发生无法预知的问题。这时候Java带着GC来了,将内存的管理交给GC来做,减轻了程序员编程的负担,提升了开发效率。

  • 神奇!C语言还可以这样用来仿真

    前面的话 本文介绍如何在matlab的simulink中嵌入C语言进行多输入多输出的仿真;这样暂时脱离硬件平台的问题,快速验证算法的可行性,从而提高效率,总体来说,simulink挺香的,不过由于不可抗拒因素,在一些高校强行被ban,非常可惜,但是我相信我们最终会拥有比matlab更强大的软件。

  • 面试官:动态内存分配时需要注意哪些坑?我懵懵懵了

    在使用C语言开发嵌入式产品的过程中,当使用到malloc函数时候都会有一个争议, “使用动态内存分配安全吗?” ,就连美国军方在safety-critical的嵌入式航空电子设备代码中,也禁止动态内存分配,我们来细细分析下。

  • “网络IO套路”小蓝说当时就靠它追到的女神

    一周至少一篇到今天已经持续30周了,希望每一篇多多少少能给大家带来点干货。同样的,今天分享的基本上一面试就会被问的网络IO。文中涉及的代码部分不太重要,重要的是对这概念的理解。在看文章之前大家也可通过下面的思维导图看看自己是否能回答出来。

  • C语言实现面向对象的原理

    不知道有多少人去了解过语言的发展史,早期C语言的语法功能其实比较简单。随着应用需求和场景的变化,C语言的语法功能在不断升级变化。

  • TIOBE 11月榜单:Python挤掉了Java!

    根据Tiobe之最新编程语言排名。Java语言的流行度在本月持续下降,而Python语言正式登上世界第二大语言的宝座。

  • 看完这篇你还能不懂C语言/C++内存管理?

    C语言内存管理指对系统内存的分配、创建、使用这一系列操作。在内存管理中,由于是操作系统内存,使用不当会造成毕竟麻烦的结果。本文将从系统内存的分配、创建出发,并且使用例子来举例说明内存管理不当会出现的情况及解决办法。

  • 这篇C++万字长文,帮你拿下字节面试

    从存储空间角度,虚函数对应一个虚函数表,而指向虚函数表的虚函数指针是存储区对象内存内的。如果构造函数是虚函数,则需要通过虚函数表来调用,而对象还没有构造出来,无法找到虚函数表。

  • 干货!C语言头文件组织与包含原则

    C语言里,每个源文件是一个模块,头文件为使用该模块的用户提供接口。接口指一个功能模块暴露给其他模块用以访问具体功能的方法。使用源文件实现模块的功能,使用头文件暴露单元的接口。用户只需包含相应的头文件就可使用该头文件中暴露的接口。

  • 从创建进程到进入main函数,发生了什么?

    这篇文章主要讨论的是操作系统层面上对于进程、线程的创建初始化等行为,而像Python、Java等基于解释器、虚拟机的语言,如何进入到main函数执行,这背后的路径则更长(包含了解释器和虚拟机内部的执行流程),以后有机会再讨论。所以这里就重点关注C/C++这类native语言的main函数是如何进入的。

  • 这道C编程面试题居然有如此多的解法!

    问题描述:任意给定一个32位无符号整数n,求n的二进制表示中1的个数,比如n = 5(0101)时,返回2,n = 15(1111)时,返回4。这也是一道比较经典的题目了,相信不少人面试的时候可能遇到过这道题吧,下面介绍了几种方法来实现这道题,相信很多人可能见过下面的算法,但我相信很少有人见到本文中所有的算法。如果您上头上有更好的算法,或者本文没有提到的算法,请不要吝惜您的代码,分享的时候,也是学习和交流的时候。

  • 干货!C语言头文件组织与包含原则

    C语言里,每个源文件是一个模块,头文件为使用该模块的用户提供接口。接口指一个功能模块暴露给其他模块用以访问具体功能的方法。使用源文件实现模块的功能,使用头文件暴露单元的接口。用户只需包含相应的头文件就可使用该头文件中暴露的接口。

  • 如何提高自己的学习力?

    再见十月,再见S10,别骂苏宁,你好十一月;忽然想水一篇和技术无关的,一起来说一说如何提高自己的学习力,个人拙见了,我知道你还没睡!

  • Linux和RTOS有什么区别?

    你知道哪个操作系统是世界上最受欢迎的操作系统吗?是Linux!它一般运行于服务器和超级计算机上,我们日常访问网站背后的数百万台服务器很有可能运行着的操作系统就是Linux。在本文中,我们将学习Linux是什么以及它来自何处,常用的Linux知识以及想要在这个令人兴奋的平台上畅游所需的命令。

  • 搞懂C语言指针,看这篇就够了!

    说到指针,估计还是有很多小伙伴都还是云里雾里的,有点“知其然,而不知其所以然”。但是,不得不说,学了指针,C语言才能算是入门了。指针是C语言的「精华」,可以说,对对指针的掌握程度,「直接决定」了你C语言的编程能力。

  • C语言实现一个简单的web服务器

    说到web服务器,想必大多数人首先想到的协议是http,那么http之下则是 tcp。本文将通过tcp来实现一个简单的web服务器。本篇文章将着重讲解如何实现,对于http与tcp的概念本篇将不过多讲解。

  • 一口气说出5种IO模型,蒙圈了!

    五种IO模型包括:阻塞IO、非阻塞IO、IO多路复用、信号驱动IO、异步IO。

  • 呵,你会51单片机的精确延时吗?

    对于某些对时间精度要求较高的程序,用 c 写延时显得有些力不从心,故需用到汇编程序。本人通过测试,总结了 51 的精确延时函数(在 c 语言中嵌入汇编)分享给大家。