c语言 define和int,C语言中define与const的用法区别分析
其实这个是困惑了我好久的问题,没想到在上机课做到的题里找到了答案——我的困惑是:#define与const到底有什么区别。
题目:
代码如下 | 复制代码 | ||||||||||||||||||||||||
#define N 2 #define M N 1 #define NUM 2*M 1 main( ) { int i; for(i=1;i<=NUM;i ) printf(“%dn”,i); } 该程序中的for循环执行的次数是( ) A) 5 B) 6 C) 7 D) 8 答案是6,跑过以后怎么都不理解,这是因为忽略了#define的重大不同。 #define进行的其实是简单的代入, 换句话说,NUM去找了M的表达式,把M的表达式代入,得出2*N 1 1,接着再去找N是多少,结果是2*2 1 1,因此等于6,而变量的话,毫无疑问则是进行了运算之后得出了的结果。 补充 1.简单的define定义
|
c语言 define和int,C语言中define与const的用法区别分析相关推荐
- c语言中{的作用,C语言中Static和Const关键字的作用
C语言中Static和Const关键字的作用 程序的局部变量存在于(堆栈)中,全局变量存在于(静态区 )中,动态申请数据存在于(堆)中.那么关于C语言中Static和Const关键字的作用,你了解多少 ...
- c语言define的小数点,C语言中#define用法总结
1.简单的宏定义 #define 标识符 替换列表(替换列表可以是数,字符串字面量,标点符号,运算符,标识符,关键字,字符常量.注意:替换列表是可以为空的) 典型错误: #define N = 100 ...
- c语言while函数作用,C语言中while /do while语句用法
在c语言中do while与while与我们学的vb,asp.net都一样的,下面我来介绍一下关于C语言中while /do while语句基于用法. C语言while语句的用法 while语句的一般 ...
- c语言中and和or的用法区别,Lua中and和or的用法和记忆方法
Lua中and 和 or是逻辑运算符,对他们的操作数而言false和nil为false,其他均为true Lua官方手册中and 和 or的解释: The conjunction operatoran ...
- c语言 编译开关用法,C语言中define的使用方法
C语言中define的使用方法 学习了这么多年C语言,说实话对宏自以为了如指掌了,没想到看内核代码的时候还是那么吃力,设备驱动代码中有很多这样或者那样的宏定义,各种define都有哪些学习方法呢?以下 ...
- c语言数组中define,c语言中#define的用法
c语言中#define的用法 C语言中,可以用 #define 定义一个标识符来表示一个常量.其特点是:定义的标识符不占内存,只是一个临时的符号,预编译后这个符号就不存在了. 预编译又叫预处理.预编译 ...
- c语言define需要分号骂,C语言中define的用法
C语言中define的用法 2016-01-06 15:00 来源: 博客园 define是C语言中的预处理命令,它用于宏定义,可以提高源代码的可读性,为编程提供方便. 预处理命令以"#& ...
- 单片机c语言的define,单片机C语言中define的妙用
单片机C语言中define的妙用 最近一款产品调试时发现了问题,在一起检查一个小伙伴的C程序.问题不大,但暴露了一点问题. 比如:PORTB=0x23; //他的意思是把第5和第2位置1 可是你能一下 ...
- #define c# 报错_c语言中#define的用法
c语言中#define的用法 C语言中,可以用 #define 定义一个标识符来表示一个常量.其特点是:定义的标识符不占内存,只是一个临时的符号,预编译后这个符号就不存在了. 预编译又叫预处理.预编译 ...
最新文章
- gettimezone_Java日历getTimeZone()方法与示例
- mysql+last_query_cost_辛星简译MySQL中的last_query_cost_MySQL
- c#中高效的excel导入oracle的方法
- 13. 在后台配置主题
- Python爬虫-什么是爬虫?
- 认识直动、先导式电磁阀
- python雷达图的相似度_python画雷达图
- 阿里P7、P8、P9级别需要多少年的工作经验,还是因能力而定?
- 常见的股票量化交易软件主要有哪几种类型?
- 客运综合管理系统项目解析-安全检查(模块)-车辆安检情况查询
- 武汉市计算机类中专学校排名,武汉中职中专学校一览表 2021最新排名
- 审阅模式中word保存不了
- c# sqlite 批量修改
- Java图像处理最快技术:ImageJ 学习第一篇
- Linux 之父是个果粉:给自用 M2 Mac 装上 Fedora Linux,除图形加速和 Chrome 都搞定了...
- 《黑客与画家》-读书笔记
- PS手绘滤镜插件:Alien Skin Snap Art 4 for Mac对系统的要求
- Debian Linux 的安装
- 【ArrayList源码】ArrayList构造方法
- 拾玉第二期人民币基金完成超额募集,金额超30亿元