【2022年1月11日打卡·技能树总结】

kikokingzz
新星创作者: 后端开发技术领域
2022-01-11 23:55:43

🔥1.基于C的语言


C语言对现代编程语言有着巨大的影响,许多现代编程语言都借鉴了大量C语言的特性:

  1. C++:包括了所有C特性,但增加了类和其他特性以支持面向对象编程
  2. Java:是基于C++的,所以也继承了C的许多特性
  3. C#:是由C++和Java发展起来的一种较新的语言
  4. Perl:最初是一种非常简单的脚本语言,在发展过程中采用了C的许多特性。

✨✨✨我是分割线✨✨✨ 

🔥2.C语言的特点


🍓C语言是一种底层语言

  • 提供了对机器级的概念(例如字节和地址的访问),这些是其他编程语言试图隐藏的内容
  • 提供了与计算机内置指令紧密协调的操作(例如库函数通过系统调用使用操作系统提供的服务)

ps:想要吃透C语言与库函数的爱恨情仇,可以看这篇文章:第一话·用一首圣诞歌的时间·入门操作系统吧~

🍓C语言是一种小型语言

  • C语言提供了一套有限的特性集合。为了使特性较少,C语言在很大程度上依赖一个标准函数的“库”

🍓C语言是一种包容性语言

  • C语言不像其他语言那样强制进行详细的错误检查,假设用户知道自己在做什么,因此它提供了比其他许多语言更广阔的自由度

✨✨✨我是分割线✨✨✨

🔥3.C语言的优缺点


🍊3.1 C语言的优点有哪些呀?

1.高效:发明C语言就是为了编写那些以往由汇编语言编写的应用程序。

2.可移植:当程序必须在多种机型上运行时,常常会用C语言来编写。

为什么C语言具有可移植性?

  • (1)该语言没有分裂成不兼容的多种分支
  • (2)C语言编译器规模小且容易编写

3.功能强大:C语言拥有一个庞大的数据类型和运算符集合,这个集合使得C语言具有强大的表达能力。

4.灵活:C语言在其特性使用上的限制非常少;C语言可以用于编写嵌入式系统到商业数据处理的各种应用程序

5.标准库:C语言的一个突出优点是它具有标准库,该库包含了数百个实用操作的函数

6.与UNIX系统的集成:C语言在UNIX系统结合方面特别强大


🍊3.2 C语言的缺点有哪些呀?

1.C程序更容易隐藏错误:C语言的灵活性使得它编程出错的概率较高,在用其他语言编程时可以发现的错误,C语言编译器却无法检查到;更糟糕的是,C语言还包含大量不易察觉的隐患(比如在一些循环语句中,一个额外的分号可能会导致无限循环)

2.C程序可能会难以理解:C语言的灵活性可能是一个负面因素,过于聪明的程序员甚至可以编写出除了他们自己几乎没人可以读得懂的程序。

3.C程序可能会难以修改:如果在设计中没有考虑到维护的问题,那么用C语言编写的大规模程序将很难修改

...全文
191 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
CSDN-Ada助手 2023-01-13
  • 打赏
  • 举报
回复
您可以前往 CSDN问答-编程语言 发布问题, 以便更快地解决您的疑问
内容概要:本文围绕基于A星(A*)算法的螺旋式全覆盖路径规划展开研究,提出一种结合A*全局搜索能力与螺旋遍历策略的栅格地图路径规划方法,利用Matlab实现机器人或无人机在指定区域内的无遗漏、高效覆盖路径生成。研究重点在于优化传统往返式扫描路径中存在的转向频繁、路径不连续等问题,通过引入螺旋机制提升路径的连贯性与遍历效率,适用于复杂环境中需要系统性作业的场景。文中提供了完整的Matlab代码实现,便于读者复现与改进算法。; 适合人群:具备一定Matlab编程基础,从事 robotics、自动化、人工智能及相关领域的科研人员与工程技术人员,尤其适合研究生及以上学历或有相关项目开发经验的专业人士。; 使用场景及目标:①应用于农业自动化巡检、环境监测、仓库盘点、无人机航测等需全覆盖作业的场景;②帮助研究人员深入理解A*算法在全覆盖路径规划中的扩展应用,掌握螺旋策略与经典算法融合的设计思路;③为智能移动设备的自主导航与任务规划提供可复用的算法模型与仿真验证手段。; 阅读建议:建议读者结合提供的Matlab代码进行实践操作,重点关注A*算法与螺旋遍历逻辑的协同机制,通过调整参数与地图环境验证算法性能,并参考同类路径规划案例深化对智能优化策略的理解。

1,195

社区成员

发帖
与我相关
我的任务
社区管理员
  • c_university_2615
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧