标签:2021.02 buildroot 实现 代码 C++ 一种 标准 c++ OK6410A
- [https://zhuanlan.zhihu.com/p/85779379]该文中讲了
C有标准, 有些时候会升级(就像armv6 armv7 armv8 一样),有C99, C11
C++有标准, 有些时候会升级(就像armv6 armv7 armv8 一样),有C++03, C++11, C++14
标准 并不对应代码 , 我们需要将标准转换为代码,并能够解析代码
标准涉及到两个东西
编译器
标准对应的代码 : 标准库
对于C 是 C标准库和ISO C标准库 // C标准库和ISO C标准库 是一样的
对于C++ 是 C++标准库
C标准库的实现有很多种
GNU组织 实现了一种, 叫 glibc
apple公司实现了一种, 位于 libSystem 中
微软公司 实现了 一种,位于 CRT
google公司 实现了一种,叫Bionic
嵌入式中一般用 uClibc-ng, musl libc和diet libc // 提供更小的二进制文件和更少的内存占用
C++标准库的实现有很多种
GNU组织实现了一种,叫libstdc++
apple公司没有实现,但使用了libc++
微软公司 实现了 一种,位于 CRT
google公司没有实现,提供了多种 libc++ libstdc++ STLport
- 我们必需使用标准库吗
可以不用
只要在你的程序中不引入它们的任何一个头文件,就代表了不用标准库
但是你实现工程的时候就需要通过一些提供的系统调用使用某种方法与操作系统互动。
其实 标准库中的函数/方法在底层实现的时候 也是 用 系统调用(与硬件设备交互)做的
嵌入式可以考虑不使用标准库(但是一般没必要)
极致优化 可以考虑 不使用标准库(这个就很有必要了)
C标准在哪里
其他
标签:2021.02,buildroot,实现,代码,C++,一种,标准,c++,OK6410A 来源: https://blog.csdn.net/u011011827/article/details/118639961
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。