gpt4 book ai didi

c - POSIX C `warning: variable ‘tables’ 已设置但未使用`

转载 作者:太空宇宙 更新时间:2023-11-04 11:14:20 28 4
gpt4 key购买 nike

我写了一个代码,一切正常,编译和工作没有问题,当我用 GCC 4.7.2 编译它时开关 -Wall 我收到以下警告:

warning: variable ‘tables’ set but not used [-Wunused-but-set-variable]

我知道这不是问题,但为什么会出现?看起来不合逻辑:

const unsigned char *tables;
char *loc = setlocale(LC_ALL, 0);
setlocale(LC_ALL, loc);
tables = pcre_maketables();

我的变量是 SET 和 USED。有什么想法吗?

最佳答案

从编译器的角度来看,两者之间的行为没有区别:

const unsigned char *tables;
char *loc = setlocale(LC_ALL, 0);
setlocale(LC_ALL, loc);
tables = pcre_maketables();

char *loc = setlocale(LC_ALL, 0);
setlocale(LC_ALL, loc);
pcre_maketables();

编译器将优化分配并翻译后者。

关于c - POSIX C `warning: variable ‘tables’ 已设置但未使用`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21689136/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com