c - 如何在 C 中重新定义变量?

标签 c variables redefinition redefine

#include <stdio.h>
int main(void)
{
    int i = 365, j = 100, result = i + j;

    printf("i + j is %i\n", result);

    int i = 100, j = 1;
    printf("i + j is %i\n", result);

    return 0;
}

9.c:10:10: 错误:声明隐藏了局部变量 [-Werror,-Wshadow] 9.c:8:9: 错误:'i' 的重新定义

最佳答案

int i = 100 替换为 i = 100

在 C 和 C++ 中,不允许在同一范围内重新声明变量。但是您可以将 i 设置为不同的值,这就是我所做的更改。

最后,如果您希望 result 的最终输出是 ij< 的 new 值之和,那么你必须重新计算。将 result = i + j; 放在 printf 调用之前。

关于c - 如何在 C 中重新定义变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40892201/

相关文章:

c# - 克隆类定义 (PCL)

c++ - 雕刻 1.4 CSG - C2375 : 'cbrt' : redefinition; different linkage

c - 在 C 中确定文件是否正在 Windows 上被删除

c - 在接受套接字之前创建的子进程中使用父进程接受的套接字

c - 如何将包含 0 或 1 的字符数组转换为 C 中的小数?

javascript - for 循环中后增量运算符的不同结果

字符串连接在 Bash cygwin 中不起作用

c - 仅在不使用调试器时出现段错误

linux - BASH/Linux - 从变量中查找下一个日期

python - python中类方法的重新定义