纯C语言有什么绝对的局限性

C语言的局限性有:1、命名空间缺失;2、宏;3、内存;4、对平台抽象不够;5、包管理器。两个文件中如果有同一名称的全局变量后,链接会报错。include了两个包含相同宏名的头文件时,预处理时会报错。

1、命名空间缺失

两个文件中如果有同一名称的全局变量后,链接会报错。include了两个包含相同宏名的头文件时,预处理时会报错。当两个.lib库中有相同名称的变量时,链接的时候会选择第一个lib库中的变量。

2、宏

我们知道预处理阶段会替换宏,所以预处理器非常简单,根本无法检查宏函数的有效性,所以很多语言中淡化了宏或者直接取消了宏功能。

3、内存

C语言对内存的访问很直接,程序中很多bug都是出在内存问题上,不是程序猿很菜,是语言设计上就没有太多考虑内存的管理操作问题。

4、对平台抽象不够

数据长度问题:16位平台上 int是16bit,但32平台上是32bit,这样程序移植上就有问题。数据大小端问题。

5、包管理器

c语言生态没有一个特别好用的包管理器,可以源码和二进制级别管理代码,c语言库的依赖问题,这是个让每个程序猿都非常头疼的问题。

延伸阅读:

什么是C语言?

文章标题:纯C语言有什么绝对的局限性,发布者:小编,转载请注明出处:https://worktile.com/kb/p/41315

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编小编认证作者
上一篇 2023年2月23日
下一篇 2023年2月23日

相关推荐

  • 什么叫面向接口编程

    面向接口编程是一种编程范式,其核心在于通过接口定义行为规范,实现解耦合、提高系统的可扩展性和可维护性。在实践中,一种具体的编程语言通常使用关键字如 interface 来定义一个接口,该接口描述了一组方法但不实现这些方法的细节。然后,类可以实现一个或多个这样的接口,提供这些方法的具体实现。这样的做法…

    2024年4月26日
    900
  • redis一般用在什么场景

    一般用在:一、缓存存储;二、分布式锁;三、计数器;四、消息队列;五、地理位置;六、实时排行榜。Redis最常用的场景之一就是缓存存储,因为Redis是一种内存数据库,它的读写速度非常快,能够快速存取数据。 一、缓存存储 Redis最常用的场景之一就是缓存存储,因为Redis是一种内存数据库,它的读写…

    2023年6月11日
    1.2K00
  • 男人什么时候开始学习编程

    男人理应在任何年龄段开始学习编程。对此,存在两个主要理由:1、技能提升、2、职业发展。其中,技能提升是尤为关键的。编程不仅仅是计算机科学的基础,而且是提升解决问题能力的有效手段。在数字化时代,无论是个人兴趣还是职业需求,掌握编程技能都可以极大地扩展一个人的能力边界,并为日后的学习或者工作积累宝贵的知…

    2024年4月27日
    900
  • 什么是VIE架构

    VIE架构,即可变利益实体,也称协议控制。其本质是境内主体为实现在境外上市采取的一种方式。这种方式可以通过控制协议将境内运营实体的利益转移至境外上市实体,使境外上市实体的股东(即境外投资人)实际享有境内运营实体经营所产生的利益。 一、什么是VIE架构 VIE架构,即可变利益实体,也称协议控制。其本质…

    2023年7月27日
    70400
  • 少儿编程选什么牌子的

    少儿编程选择品牌时应考虑的主要因素包括 1、课程质量、2、教学方法、3、师资力量、4、课后服务以及5、性价比。特别是课程质量, 它是衡量一个品牌是否值得选择的重要指标。优秀的课程内容不仅应覆盖基础编程知识,还要结合孩子的年龄和认知水平,灵活运用趣味性强的教学素材,以激发孩子对编程的兴趣和热爱。此外,…

    2024年4月27日
    900
  • 什么编程码

    什么是编程语言 编程语言是工程师与计算机交流的桥梁,它们使得程序员能够编写用于创建软件程序的指令。 这些语言以一种高效、准确的方式表达算法,并为给定问题提供创造性的解决方案。编程语言可以归类为低级与高级语言,其中低级语言包括机器语言和汇编语言,靠近硬件,直接控制机器行为;高级语言则接近人类语言,易于…

    2024年4月25日
    1800
  • 数据挖掘、机器学习、深度学习有什么区别

    区别是:数据挖掘是指从大量的数据中通过算法搜索隐藏于其中信息的过程。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。深度学习是机器学习的一种,而机器学习是实现人工智能的必经路径。 数据挖掘 数据挖掘是指从大量的数据中通过算法搜索隐藏于其中信息的过程。 数据…

    2023年2月14日
    65500
  • 管理工具和方法有哪些

    管理工具和方法有:1、SWOT分析法;2、乔哈里视窗;3、PDCA工作法;4、七何分析法(5W2H);5、SMART原则;6、SCQA模型。SWOT分析法对研究对象所处的情景进行全面准确的研究,从而根据研究结果制定相应的发展战略、计划等。 1、SWOT分析法 所谓SWOT分析,即基于内外部竞争环境和…

    2023年1月31日
    1.8K00
  • 考编程用什么电脑好

    学习编程时选择合适的电脑对于提高学习效率和体验至关重要。1、性能稳定、2、良好的兼容性、3、合理的价格是选择编程电脑的三大核心要素。在这三点中,性能稳定无疑是最为重要的。一个性能稳定的电脑能够顺畅地运行各种开发工具和编程环境,大幅度减少软件崩溃和系统卡顿带来的困扰,从而让开发者能够集中精力编码和de…

    2024年4月27日
    800
  • Python的优点和缺点有什么

    Python的优点有:1.代码可读性强;2.开发效率高;3.跨平台。代码可读性强指,Python的语法简洁,使代码易于阅读和维护,对于新手和非专业程序员来说,Python是一个容易学习和上手的语言。缺点有:1.执行速度慢;2.资源消耗较高。执行速度慢是由于Python是一种解释型语言,执行速度可能不…

    2023年5月12日
    1.5K00

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部