导航:首页 > 编程知识 > 汇编程序在什么时把宏调用展开

汇编程序在什么时把宏调用展开

发布时间:2024-05-15 05:41:18

1. C程序中的宏展开是在()。

C:编译前预处理时进行的
#是编译预处理指令,以#开头的操作就是编译预处理
包含#include在内的都是在编译预处理时进行处理,处理完成后再把新的代码交给编译器进行编译

2. ARM汇编语言由哪些指令组成它们之间的区别是什么

机器指令能被处理器直接执行,而汇编指令、伪指令和宏指令不能。机器指令包括ARM指令集和Thumb指令集 。

伪指令是在源程序汇编期间,由汇编编译器处理。其作用是为汇编程序完成准备工作。

宏指令在程序中用于调用宏,宏是一段独立的程序代码;在程序汇编时,对宏调用进行展开,用宏体代替宏指令。

3. 浠涔堟槸瀹忓睍寮锛屾庝箞瀹炵幇锛

瀵逛簬C++瀹忓睍寮锛屽厛璇翠竴鐐癸細
#define鍔熻兘灏嗘簮绋嬪簭鏂囦欢涓鍑虹幇鐨勫瑰畯鐨勫紩鐢ㄥ睍寮鎴愮浉搴旂殑瀹 瀹氫箟锛岀敱棰勫勭悊鍣ㄦ潵瀹屾垚銆傜粡杩囬勫勭悊鍣ㄥ勭悊鐨勬簮绋嬪簭涓庝箣鍓嶇殑婧愮▼搴忔湁鎵鏈変笉鍚岋紝鍦ㄨ繖涓闃舵垫墍杩涜岀殑宸ヤ綔鐨勭‘鍙鏄绾绮圭殑鏇挎崲涓庡睍寮锛屾病鏈変换浣曡$畻鍔熻兘銆
瀵逛簬鈥滃甫鍙傛暟鐨勫畯鏇挎崲鈥濓紝鍙浠ョ敱涓嬪垪浠g爜灏濊瘯鐞嗚В涓

#include <stdio.h> #define min(x,y) ({ typeof(x) _x = (x);typeof(y) _y = (y); (void) (&_x == &_y); _x < _y ? _x : _y; }) //闃叉x鍜寉涓轰竴涓琛ㄨ揪寮鍜屽け鍘讳簡绫诲瀷妫娴嬪姛鑳斤紱
#define min_replace(x,y) ({ x < y ? x : y; })
void main()
{
int x=1;
int y=2;

int result = min(x++,y);
printf("娌℃湁鏇挎崲鏃剁殑杩愯岀粨鏋滀负:%d\n",result);
int x1=1;
int y1=2;
int result1 = min_replace(x1++,y1);
printf("鏇挎崲涔嬪悗鐨勮繍琛岀粨鏋滀负锛%d\n",result1);
return ;
}

闇瑕佹敞鎰忥細
瀹忓悕鍜屽弬鏁拌〃鐨勬嫭鍙烽棿涓嶈兘鏈夌┖鏍笺

瀹忔浛鎹㈠彧鍋氭浛鎹锛屼笉鍋氳$畻鍜岃〃杈惧紡姹傝В锛岃繖涓鐐硅佹牸澶栨敞鎰忋

鍑芥暟璋冪敤鍦ㄧ紪璇戝悗绋嬪簭杩愯屾椂杩涜岋紝骞朵笖鍒嗛厤鍐呭瓨銆傚畯鏇挎崲鍦ㄧ紪璇戝墠杩涜岋紝涓嶅垎閰嶅唴瀛樸

瀹忕殑鍝戝疄缁撳悎锛堝搼瀹炵粨鍚堢被浼间簬鍑芥暟璋冪敤杩囩▼涓瀹炲弬鏇夸唬褰㈠弬鐨勮繃绋嬶級涓嶅瓨鍦ㄧ被鍨嬶紝涔熸病鏈夌被鍨嬭浆鎹銆

瀹忓睍寮浣挎簮绋嬪簭鍙橀暱锛岃屽嚱鏁拌皟鐢ㄥ垯涓嶄細銆

阅读全文

与汇编程序在什么时把宏调用展开相关的资料

热点内容
专题学习网站源码 浏览:163
jsphead什么 浏览:88
gps串口数据怎么发送 浏览:968
win10文件主页共享查看 浏览:411
中国联通有哪些app是免流的 浏览:176
边做边保存的文件找不到了 浏览:858
win10照片应用文件夹名称 浏览:966
编程如何解决资金的原子性 浏览:638
如何制作广角镜头矫正文件 浏览:513
在网页开发中应该选用哪个数据库 浏览:742
iphone5移动卡贴 浏览:990
电脑文件的格式 浏览:127
extjs的xtype 浏览:959
suse11iso文件要u盘安装 浏览:153
如何将报表统计数据转化为图形 浏览:444
如何寄快递材料文件 浏览:265
java构造方法private 浏览:475
手机文件找回恢复 浏览:516
word怎么把u盘里的文件拔掉 浏览:976
港版苹果用的插排 浏览:1000

友情链接