首页 \ 问答 \ 在C语言学习中什么叫宏定义?

在C语言学习中什么叫宏定义?

更新时间:2019-06-21 02:04

最满意答案

宏定义高级语言编译器提供的常用语法,其目的是利用某一标识符标识某个文本字符串。在编写程序时,如果程序中反复地使用某个数据或某段程序片段,就可以考虑将这个数据或程序片段定义为宏,然后每个出现该数据或程序片段的地方用宏名替代,这样做的好处是程序简洁,可读性好,而且当需要修改这些相同的程序片段时,只要修改宏定义中的字符串即可,不需要修改多处。
2008-10-11 回答

相关问答

更多

什么是语言学?

语言学是研究人类语言的科学。语言学和语言学习不同,学习语言是一个语文学习,但是基础语言学是研究所有人类语文之后的相同规则(通常只有根据语言,非文字)。传统上,语言学是文化人类学的分支学科,但是二十一世纪以来语言学越来越独立了。语言学研究句法和词语等语言的描述,也研究语言的发展史。语言学专业培养具备文艺理论素养和系统的汉语言文学知识,能在新闻文艺出版部门、高校、科研机构和机关企事业单位从事文学评论、汉语言文学教学与研究工作,以及文化、宣传方面的实际工作的汉语言文学高级专门人才。

C语言学习的网站

50个c/c++源代码网站 2010-01-27 12:33 | (分类:默认分类) C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。 1、 http://snippets.dzone.com/tag/c/ --数以千计的有用的C语言源代码片段 2、 http://www.hots ...

请问C语言中宏定义怎么用

宏定义就好像是WORD中的“全部替换”一样,只不过这个替换是在将源程序在系统“编译”时执行的。 举例说: #define sub(a,b) ((a)-(b)) 源程序中若有 x=sub(200-1,100+10); 会被编译为: x=((200-1)-(100+10)); 即x被赋值为89 如果#define sub(a,b) a-b的话 x=sub(200-1,100+10); 就变成x=200-1-100+10; x会被赋值为109

c语言宏定义

宏定义又称为宏替换,C语言中的宏定义只是简单的字符串替换而已。 比如 define N 1000 在程序中遇到N就自动把N替换成1000,N不是一个变量,不能赋值。 如果你写N=1; 相当于写1000=1; 这编译是通不过的,所以你使N的值改变是做不到的。 N只是一个要被替换的记号而已,连变量也不是。

C语言的宏定义问题

一. #define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得程序的运行与预期的目的不一致,或者在读别人写的程序时,把运行结果理解错误,这对 C语言的学习很不利。 1 #define命令剖析 1.1 #define的概念 #define命令是C语言中的一个宏定义命令,它用来将一个标识符定义为一个字符串,该标识符被称为宏名,被定义的字符串称为替换文 ...

C语言利用宏定义求函数和

#include #define TRUE 1 #define FALSE 0 #define EVEN(x) (((x)%2==0)?TRUE:FALSE) void main() { int sum,i; /*定义 整型变量,分别为存储累计和和循环计数变量*/ sum=0; /*给累加和初始化*/ for(i=1;i<=100;i++) /*1-100做循环*/ { if(EVEN(i)) /*如果是偶数*/ sum+=i; /*累加*/ } printf("SUM=%d\n",sum); / ...

哪种电脑语言学习起来比较容易入门?

计算机语言学习不错啊,什么语言都有它的独特之处.如果有容易的,那大家就都学那一种语言了。 只要你努力学,计算机语言学习无论哪种都挺简单的。本人觉得学C语言好一些,计算机好多都要用到C 语言。专业的计算机语言学习机构有很多啊,比如深圳有一家叫华夏软件学校就不错,你可以去咨询咨询。。。

C语言中的宏定义.

D是错误的 不用加分号 运行时间是程序运行的时间 编译时间是程序翻译成二进制码的时间

相关文章

更多

最新问答

更多
  • Android宽度:100%修复(网站接管问题)(Android width:100% fix (website takeover issue))
  • C ++函数/方法设计的良好实践(Good practice in C++ function/method design)
  • 计算其他表中不存在的所有记录 - SQL查询(Count all records that does not exist to other table - SQL Query)
  • 为什么我要用JPA共享ID?(Why do I get shared Ids with JPA?)
  • asp.net - 如何显示来自html格式的数据行的字段(asp.net - how to display a field from data row that is in html format)
  • 我们如何使用ActiveRecord从连接表中删除行?(How can we delete rows from a join table by using ActiveRecord?)
  • ng-class搞乱了类的顺序(ng-class messing with the order of classes)
  • oracle 12g无效数字错误(oracle 12g invalid number error)
  • 更改ng-src值onclick(Change ng-src value onclick)
  • 如何在android中自动添加自定义依赖项以创建新项目?(How to add custom dependencies automatically in android for ever a new project is created?)
  • datetime函数在PHP中(datetime function in php)
  • 在javascript中获取会话数组的值(in javascript get the value of a session array)
  • 如何在UTF8中编译LaTeX?(How can I compile LaTeX in UTF8? [closed])
  • Rspec:“array.should == another_array”,但不用担心订单(Rspec: “array.should == another_array” but without concern for order)
  • Logcat错误:无法在android片段中加载视图(Logcat error: unable to load view in android fragments)
  • JavaFX的。(JavaFX. Adding items to the list in different threads is not working)
  • 从GDATA日历资源迁移到Google Calendar Resource api(Migrate from GDATA calendar resource to Google Calendar Resource api)
  • SSRS 2008 - 以零情景处理分割(SSRS 2008 - Dealing with division by zero scenarios)
  • 我如何以编程方式添加一个listView列标题的点击事件(How can I add a listView column header a click event programmatically)
  • Wxpython:无法检索有关列表控件项XXX的信息(Wxpython: Couldn't retrieve information about list control item XXX)
  • 使用Tortoise SVN在SVN存储库中移动目录(Move Directory across SVN repository using Tortoise SVN)
  • 天蓝色服务结构集群中的web api无状态服务是否在一段时间不活动后进入休眠状态?(Do web api stateless services in azure service fabric cluster go to sleep after a period of inactivity?)
  • 我可以设置intelliJ来突出显示PHP编码风格吗?(Can I set intelliJ to highlight php coding style?)
  • 用javafx创建一个Truetype字体文件(Creating a Truetype Font file with javafx)
  • Spring ftp配置错误(Spring ftp configuration is wrong)
  • 使用gsub去除多个字符(Using gsub to strip multiple characters)
  • 续订推送证书并保持当前的App Store App正常工作(Renew Push certificate and keep current App Store App working)
  • js:ES5和ES6之间关于'this'关键字用法的一个令人困惑的观点(js: one confusing point about 'this' keyword usage between ES5 and ES6)
  • window.onload vs $(document).ready()(window.onload vs $(document).ready())
  • 在Swift中,如何声明一个符合一个或多个协议的特定类型的变量?(In Swift, how can I declare a variable of a specific type that conforms to one or more protocols?)