c – 获取main()函数的地址是非法的吗?

前端之家收集整理的这篇文章主要介绍了c – 获取main()函数的地址是非法的吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
根据 this answer使用函数main()是非法的(§3.6.1.3),如果其名称出现在可能的计算表达式(§3.2)中,则使用函数.

假设我有这个代码

printf( "%p",&main );

函数main()的名称出现在表达式& main中.

上面的代码是非法的吗?

解决方法

是.正如你所说,标准说你不能使用
主要.

另请注意,函数的地址与“%p”不匹配.相应的参数必须具有void *类型;任何其他type(除了可能是char *)是非法的,并导致undefined行为.

原文链接:https://www.f2er.com/c/118365.html

猜你在找的C&C++相关文章