Tag: 空隙

什么 – 或做 – “挥发性无效function(……)”做什么?

从语法的角度来看,我已经看过“volatile”关键字在C ++函数中有多少用法? 关于在函数上使用volatile关键字,但没有明确解释该问题的案例1做了什么。 只有一位受访者表示这似乎毫无意义/无用。 然而,我不能完全接受这种说法,因为GNUC的AES软件实现已经使用了几年,它们有许多这样的function: INLINE volatile void functionname( /* … */ ) { /* … */ asm( /* … */ ) // embedded assembly statements /* … */ } 必须有这种用法的原因。 谁能: A. 告诉我原来的原因是什么; 和 B。 现在如何达到预期的效果? 我正在使用Ubuntu和GCC 4.6.3。 注意:我最接近解释的是,在GCC 2.5之前,您可以通过以下方式欺骗在2.5中实现的’noreturn’属性: void fatal( /* … */ ) { /* … */ exit(1); } typedef void […]