Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 函数周围的杂注是否影响内部函数_C_Compiler Optimization_Pragma - Fatal编程技术网

C 函数周围的杂注是否影响内部函数

C 函数周围的杂注是否影响内部函数,c,compiler-optimization,pragma,C,Compiler Optimization,Pragma,假设我用O2编译了我的程序 #pragma GCC push_options #pragma GCC optimize("O0") my_func { other_func(); } #pragma GCC pop_options pragma是否也以任何方式影响其他函数 谢谢它不会影响其他函数(),因为它是assamble中的jmp指令。它不会影响其他函数(),因为它是assamble中的jmp指令。它会如何影响其他函数?这只是一个电话。other_func的

假设我用O2编译了我的程序

#pragma GCC push_options  
#pragma GCC optimize("O0")  
my_func  
{  
    other_func();  
}  
#pragma GCC pop_options
pragma是否也以任何方式影响其他函数


谢谢

它不会影响其他函数(),因为它是assamble中的jmp指令。

它不会影响其他函数(),因为它是assamble中的jmp指令。

它会如何影响
其他函数
?这只是一个电话。
other_func
的设置由定义
other_func
的地方的pragmas和编译器设置决定,也就是它的主体被实现的地方。这也是我的想法。但是,没有找到有关此的信息。感谢使用
push_选项
pop_选项
optimize
pragma创建一个本地“范围”。也就是说,只有在使用
optimize
pragma之后,但在使用
pop\u options
还原旧设置之前的函数才应使用优化级别0进行编译。它会如何影响
其他功能
?这只是一个电话。
other_func
的设置由定义
other_func
的地方的pragmas和编译器设置决定,也就是它的主体被实现的地方。这也是我的想法。但是,没有找到有关此的信息。感谢使用
push_选项
pop_选项
optimize
pragma创建一个本地“范围”。也就是说,只有在使用
optimize
pragma之后,但在使用
pop_options
恢复旧设置之前,才应使用优化级别0编译函数。