我们有一个生产Socket代码,经常在其中找到以下代码:
struct sockaddr_in* sin = (struct sockaddr_in*)to;
(void)sin;
现在进一步使用变量sin了吗?由于这是生产代码,因此我不确定这些语句是否具有任何重要性? ti想要在这里实现的代码是什么-从我的角度来看,这是完全冗余的代码
答案 0 :(得分:1)
它具有良性效果。
它主要用于禁止有关未使用变量的编译器警告,在这种情况下为sin
。如果确实没有在这两行之外使用sin
,则可以安全地删除它们。
(我禁止使用它,因为如果未初始化sin
,它会导致该分支上的行为未定义和灾难性的优化。)
答案 1 :(得分:0)
这用于避免未使用的变量的编译器和静态分析工具警告