问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

#define 后面的意思

发布网友 发布时间:2022-06-09 03:30

我来回答

3个回答

热心网友 时间:2023-09-14 10:58

宏定义就是文本替换,将代码里出现该宏的地方,替换为宏定义的文本。不过需要特别注意宏定义,因为这个比较容易出错。比如你上面定义的
#define TIN_TRIANGLE(i) (i/3)
如果使用该宏时,写如下表达式:
TIN_TRIANGLE(i+9)
那么替换后则成为了(i+9/3),不是你要表达的意思。正确的定义应该是
TIN_TRIANGLE(i) ((i)/3)
这样替换后表达式变为((i+9)/3),就不会出现上述问题了。

热心网友 时间:2023-09-14 10:59

这种宏有点类似于函数

#define TIN_TRIANGLE(i) (i/3)
 这个是返回i除以3的值,比如你使用TIN_TRIANGLE(9),那么结果就是3

#define TIN_CORNER(i) (i%3)
这个是返回i除以3的余数

#define TIN_INDEX(t,c) (t*3+c)

这个是返回第一个数乘以3加上第二个数的值,比如TIN_INDEX(1,2),那么结果就是5

#define TIN_NEXT(c) ((c+1)%3)
这个是返回c+1除以3的余数

#define TIN_PREV(c) ((c+2)%3)
返回c+2除以3的余数

热心网友 时间:2023-09-14 10:59

这个就是文本替换,将定义之后的出现 TIN_TRANGLE(i)的地方全部换成 (i/3),
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果13必须要关闭的功能,苹果13新手机要关闭哪些功能 电线2.5平方是多少直径是多少米 2.5平方铜线的直径是多少毫米? 游龙门记 高铁能托运猫吗 电子邮箱是什么 电子邮箱是什么格式 探客手电产品的质量怎么样呢?口碑不是催出来的吧 手电筒品牌 空调为什么会亮红灯? 盆栽芋头能活多久 define后面为什么可以只有标识符而没有字符串 如何重新申请? #define function( param1,param2,...) define 后面指跟一个变量时,表示什么? #define后面只有一个标识符是什么意思? 掌握,从后台可以调取转账记录吗 掌握,从后台可以调取转账记录吗 月工资6000实上班22天应得多少工资 如何重新申请? 有大行岀蒜机吗?就是把蒜挖掉和蒜胡切掉蒜英切掉出来之后就是大蒜。 A dog can’t speak any words, but it can “talk”. It has feelings just as you do. Sometimes it ma 山东金乡的大蒜是怎样种植的?人工种还是机播?现在有没有比较好的大蒜播种机?什么型号的?效果怎么样? 关于狗的英语小作文200字 个人社保缴费362元怎么计算工资 XP系统很慢? XP系统的反应速度是不是越用越慢呢? XP系统慢不慢? iphone手机好多APP本来是有归类文件夹的 但突然都一个个的 怎么恢复 寓意读书种四季桂还是丹桂好 对对联下联? C++中#define怎么用的,后面是个类似函数的用法 在#define的后面定义 我今年57发,住房公积金3万多,买房想货20万,用房产证贷,能贷吗? 怎样启动蓝牙耳机 华为Ⅴ10怎么开启耳机模式? 沈阳市医保公司在哪 沈阳市医保公司地址电话 怎样缅怀革命烈士留言 沈阳市医保公司电话 沈阳社会医疗保险中心地址 沈阳市医保中心地址 沈阳医保大病保险公司 沈阳市医保中心电话是多少 沈阳社保公司电话是多少 哪位知道沈阳市医疗保险企业缴费基数有没有上限?另外住房公积金单位缴费是怎么规定的? 沈阳灵活就业人员医疗保险 沈阳市医保管理中心电话是多少 欠条给本人写的是小名可以起诉吗? 欠条上债权人名字和身份证不符能起诉吗 如果欠条不是他本人真名怎么起诉