gpt4 book ai didi

c - 如何在 C 中将 char* argv[1] 转换为 int 并在没有警告的情况下打印它

转载 作者:行者123 更新时间:2023-11-30 16:37:13 38 4
gpt4 key购买 nike

我想将 argv[1] 转换为 int。但我收到这个警告:

xorcipher.c:7:9: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘int *’ [-Wformat=]

printf 显示我

-799362156

如果我输入

./xorcipher 4

如何纠正这个问题?

这是我的代码:

#include <stdio.h>
#include <stdlib.h>

int main(int argc,char* argv[])
{
int key_length = atoi(argv[1]);
printf("key_length = %d", &key_length);
return(0);
}

最佳答案

您正在传递 key_length 的地址,正如错误所述,printf 只需要该值。试试这个:

printf("key_length = %d", key_length);

参见this tutorial关于 C 格式说明符。

关于c - 如何在 C 中将 char* argv[1] 转换为 int 并在没有警告的情况下打印它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48044960/

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