GCC的基础知识

    以前自己在安装交叉编译工具链时经常会看到arm_v5t-le-gcc和arm_v5t-le-g++等,以为gcc就是一个C语言的编译器,后来发现自己肤浅了,相信也有很多刚接触LINUX系统也会有和为一样的误解,所以在这里总结一下。

  1. GCC不只是C语言的编译器,最初的创造者开发的目的的确只针对C编译,但随着各种编译器的产生,现在的GCC是一个编译器的套装,gcc命令也只是调用各种编译器的快捷方式。
  2. (C99/C89到底与GCC有啥关系?我也这么发问过,没事,知识无非是先知和后知的问题)首先,C99和C89指的是C语言规范,无规矩不成方圆嘛,由于是89年提出,故称为C89,国际列为标准后经过几次修改,最后GCC就支持了C89规范。至于C99也就是在C89基础上不断修正完善后GCC又支持了C99而已。由于GCC目前还没有完全支持C99规范,所以默认情况GCC使用C89规范,想用C99那就自己加-std=c99参数吧。

    C89与C99标准到底有什么区别?自己也不全知晓,但在使用VS2008进行开发过程中,常会在for循环语句内部声明变量,如

for(int i=0;i<5;i++){
             ...
}

这就是C99规范中的一个规定。至于其他的规范区别还是自己谷歌去吧。推荐一个链接,对于了解一下两个规范的区别够用了。http://www.360doc.com/content/10/0324/18/2633_20101093.shtml

   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值