DSP编程技巧之:非常“关键”的关键字
本文摘要:什么是关键词? 关键词是指已经在c语言本身中使用,不能在变量名、函数名等中使用的关键词等其他用途中使用的单词。那个关键词到底有多重要呢? 非常简单地说,如果不控制它们的使用方法,程序就不能按照我们的设计取得预期的结果。C28x编译器反对所有标准C89的关键字,const、volaTIle、register、标准C99的关键字、反对inline和restrict、ti定制的扩展关键字__cregister、__。 对于FPU的操作者,也反对restrict关键词。

亚博全站APP登录

什么是关键词? 关键词是指已经在c语言本身中使用,不能在变量名、函数名等中使用的关键词等其他用途中使用的单词。那个关键词到底有多重要呢? 非常简单地说,如果不控制它们的使用方法,程序就不能按照我们的设计取得预期的结果。C28x编译器反对所有标准C89的关键字,const、volaTIle、register、标准C99的关键字、反对inline和restrict、ti定制的扩展关键字__cregister、__。

对于FPU的操作者,也反对restrict关键词。接下来,让我们看看一些常用关键字的用法,如const、cregister、far和__interrupt。

上一篇文章DSP编程技巧的15-在代码优化中必须考虑的5个问题中,我已经说过了volatile和restrict的使用方法,这里也重复说一下。1.constconst关键字用于定义值不允许变化/转换的变量、数组等。也就是说,这些变量、数组将被读取。

亚博全站APP官网登录

通常,const定义的全局变量不存储在cmd文件定义的. const段中,但. const段通常不通过链接器分配给ROM或FLASH存储,而不是RAM。芯片上ROM/FLASH的空间一般比RAM的空间大,认为RAM的空间往往不紧张的存储器分配方式是有利的。

但是,const定义的全局变量依然没有分配给RAM的地址空间,1 )用于const定义变量,同时也用于volatileconstintx这样的volatile关键字,volatile类型的变更程序不能对volativeconst定义的常数进行更改(但是,外部程序也可以更改)。2 )在函数的作用域内,对象被自动存储。

在用于const关键词情况下,其方位非常重要,例如int*constp=x; //指针p是常数型(p不能相反),指针的内容是星型的int型变量constint*q=x; //指针q是星形的,constant的int类型用于const关键字,可以定义内容较多的常数型数据表(例如100点的自定义数学表),分配给ROM/Flash。例如,constintdigits[]={。通常,不需要在#define中预测特定符号的值。

#define和const有什么区别? const中定义的读取变量在程序执行过程中只有一个副本(例如,存储在ROM中,具有相同的地址)。#define定义的宏常数在存储器中有多个副本。#define宏在实际编译器阶段进行展开变更,const标签的读取变量在编译器时确认其值。

#define宏没有类型,但const标签的导入变量有特定的类型(是哪种类型还是哪种类型? 但是,会读取其值)。const的好处是引入常数的概念,避免更改不应该更改的内存。如果错误地转换const变量的值,编译器可以显示相关的错误消息并发出警告。


本文关键词:DSP,编程技巧,之,亚博全站APP登录,非常,“,关键,”,的,关键字

本文来源:亚博全站APP登录-www.cqblg.com