此代码成功编译(在visual studio中),但有一些警告,如
source.cpp(7):警告C4068:未知编译指示
警告C4081:预期'标识符&#39 ;;找到'字符串'
#include <stdio.h>
#pragma aux __my "_*" \
parm routine [eax edx] \
value struct struct caller [ ] \
modify [eax edx];
int __pragma("__my") test(int a, int b, int c, int d, int e){
return a * 1 + b * 2 + c * 3 + d * 4 + e * 5;
}
int main(){
printf("test\n");
int x = test(1, 2, 3, 4, 5);
printf("X is %d\n", x);
return 0;
}
它应该改变调用约定,但没有任何事情发生。