指针上的C指针:未使用的变量
我刚刚用C编写了我的第一个应用程序,我有一个警告(编辑):指针上的C指针:未使用的变量,c,pointers,C,Pointers,我刚刚用C编写了我的第一个应用程序,我有一个警告(编辑):未使用的变量pp int compteur = 1; int *p = &compteur; int **pp = &p; 我只是想让pp指向变量p 如果这是一个愚蠢的问题,请原谅,但在我的书中,他们并没有在指针上谈论指针。 谢谢,这是完全合理的。您的编译器只是通知您创建了一个变量,然后没有对它做任何处理-通常表示编程错误。我可以假设,这不是错误,而是警告。“unused variable pp”意味着在以后的代码中不
未使用的变量pp
int compteur = 1;
int *p = &compteur;
int **pp = &p;
我只是想让pp
指向变量p
如果这是一个愚蠢的问题,请原谅,但在我的书中,他们并没有在指针上谈论指针。
谢谢,这是完全合理的。您的编译器只是通知您创建了一个变量,然后没有对它做任何处理-通常表示编程错误。我可以假设,这不是错误,而是警告。“unused variable pp”意味着在以后的代码中不使用变量pp。如果这是您的程序唯一要做的事情,那么是的,编译器警告您未使用的变量是正确的,因为您没有使用它们 如果您要执行,例如,
printf(“%d\n”,**p)代码>,则警告应消失
我有此警告(已编辑):未使用
可变pp
尊重(并担心和询问)编译器警告消息,这是我的荣幸。保持这种状态。(我总是使用-Werror
编译,这样“警告”就被视为“错误”。我总是觉得它很有用。)
引述:
-未使用变量
当局部变量或非常量为静态变量时发出警告
变量除了其
宣言。此警告已启用
靠墙
严格地说,声明一个变量然后不使用它是有意义的。这就是pp
的情况,编译器正在提醒这一点。在这种特殊情况下
- 您可以以某种必需的方式使用
pp
,或者
- 以“无操作”的方式使用它
以下是“无操作”方式的代码:
有关no-op-use的更多详细信息,请参阅另一个线程:除非您告诉编译器将警告作为错误处理,否则这种情况最多只能产生一个警告。
int main() {
int compteur = 1;
int *p = &compteur;
int **pp = &p;
(void) pp; // no-op use of pp
}