C51的一些误区和注意事项(ZT) 1)C忌讳绝对定位。 常看见初学者要求使用_at_,这是一种谬误,把C当作ASM看待了。在C中变量 的定位是编译器的事情,初学者只要定义变量和变量的作 用域,编译器就把一个固定地址给这个 变量。怎么取得这个变量的地址?要用指针。比如unsigned char data x 后,x的地址就是...
上传时间: 2014-12-05
上传用户:xiaoxiang
嵌入式系统应用工程师借用计算机专家创建的C语言,使嵌入式系统应用得以飞速发展,而MISRAC是嵌入式系统应用工程师对C语言嵌入式应用做 出的贡献。如今MISRA C已经被越来越多的企业接受,成为用于嵌入式系统的C语言标准,特别是对安全性要求极高的嵌入式系统,软件应符合MISRA标准。 本文由清华嵌入式系统研究专家,邵贝贝教授领衔执笔,分六讲,跟读者一起学习MISRAC。 第一讲:“‘安全第一’的C语言编程规范”,简述MISRAC的概况。 第二讲:“跨越数据类型的重重陷阱”,介绍规范的数据定义和操作方式,重点在隐式数据类型转换中的问题。 第三讲:“指针、结构体、联合体的安全规范”,解析如何安全而高效地应用指针、结构体和联合体。 第四讲:“防范表达式的失控”,剖析MISRAC中关于表达式、函数声明和定义等的不良使用习惯,最大限度地减小各类潜在错误。 第五讲:“准确的程序流控制”,表述C语言中控制表达式和程序流控制的规范做法。 第六讲:“构建安全的编译环境”,讲解与编译器相关的规范编写方式,避免来自编译器的隐患。 希望大家喜欢。
上传时间: 2013-12-27
上传用户:franktu
asn格式文件的编译器,可以生成相应的.c,.h文件,该模块在Linux操作系统环境下编译通过
上传时间: 2015-07-22
上传用户:z1191176801
ICCAVR编译器的中文使用说明书,是C语言开发AVR必不可少的工具
上传时间: 2014-01-20
上传用户:caozhizhi
介绍了如何将m文件转换成VC可调用的dll文件,在这章中介绍如何利用编译器将m文件转换成对应的C\C++文件,并在VC中调用
上传时间: 2013-12-08
上传用户:jackgao
PL0 C++ 对pl0语言程序的语法分析源程序,另外一个PL0的编译器
上传时间: 2015-08-20
上传用户:zhengjian
第一讲:“‘安全第一’的C语言编程规范”,简述MISRAC的概况。 第二讲:“跨越数据类型的重重陷阱”,介绍规范的数据定义和操作方式,重点在隐式数据类型转换中的问题。 第三讲:“指针、结构体、联合体的安全规范”,解析如何安全而高效地应用指针、结构体和联合体。 第四讲:“防范表达式的失控”,剖析MISRAC中关于表达式、函数声明和定义等的不良使用习惯,最大限度地减小各类潜在错误。 第五讲:“准确的程序流控制”,表述C语言中控制表达式和程序流控制的规范做法。 第六讲:“构建安全的编译环境”,讲解与编译器相关的规范编写方式,避免来自编译器的隐患。
上传时间: 2014-01-21
上传用户:Altman
4tH compiler是一个稍有不同的Forth 编译器,不像标准Forth 引擎所提供的常规编译器。4tH 是一个非常小的编译器,它可以生成字节码,嵌入式C字节码,单独的可执行文件,但是它也可以作为一个脚本语言
上传时间: 2014-10-26
上传用户:gaome
在C 语言中,表达式是最重要的组成部分之一,几乎 所有的代码都由表达式构成。表达式的使用如此广泛,读 者也许会产生这样的疑问,像+ 、- 、3 、/ 、& & 这样简单 的运算也会出现问题吗? 程序员在编写表达式时,往往带 有一些不良的习惯。即使是编写很简单的表达式,这些不 良习惯也可能造成隐患,这个小小的隐患甚至可能引起整 个系统的崩溃。实际上,在程序调试过程中,表达式中存 在的大部分隐患皆来源于程序员的主观臆测,即认为表达 式应该是按自己认为的方式执行,但结果可能完全相反。 这是因为程序设计语言或编译器的某些内在机制并不如 我们所想的那样。所有的编译器都遵从这一假定:程序员 都是“神”,他们既了解编程语言的各种特性,也了解编译 器本身一些鲜为人知的处理原则。当然, 程序员不是 “神”。因此,程序员在编写程序的过程中需要小心地避免 编译器“设置”的各种陷阱,而问题是有些时候很难预测下 一步是否会踏上一个陷阱
上传时间: 2015-09-08
上传用户:jennyzai
PL0的一个编译器,从pascal改为C的,注释比较详细
上传时间: 2014-07-05
上传用户:haoxiyizhong