为什么要将变量赋给自己

前端之家收集整理的这篇文章主要介绍了为什么要将变量赋给自己前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Assign to itself: optimization or extraneous?1个
一位同事写了这样一个函数(评论是我写的):
static void foo(void *arg)
{
    //arg is NOT global variable
    arg = arg;
    // call other function,but doesn't use arg
    foo2();
}

是否有理由编写这样的代码?它有一些特殊用途吗?

解决方法

它可能是为了将来的扩展目的.现在,该参数未被使用,但可能在更高版本中,它可用于更多功能,而无需更改功能签名.

添加Paul R.指出的目的,arg = arg;语句只是尝试使用arg来抑制编译器警告,以获得干净的无警告构建.

P.S.:这样的代码也在我公司使用.

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