gpt4 book ai didi

Char 未转换为 int

转载 作者:太空狗 更新时间:2023-10-29 16:45:29 25 4
gpt4 key购买 nike

出于某种原因,我的 C 程序拒绝将 argv 的元素转换为 int,我不明白为什么。

int main(int argc, char *argv[])
{

fprintf(stdout, "%s\n", argv[1]);

//Make conversions to int
int bufferquesize = (int)argv[1] - '0';

fprintf(stdout, "%d\n", bufferquesize);
}

这是运行 ./test 50 时的输出:

50

-1076276207

我试过删除 (int),在 (int) 和 argv[1] 之间同时添加一个 * 和一个 & - 前者给了我 5 但不是 50,但后者给了我类似的输出多于。删除 - '0' 操作没有多大帮助。我还尝试制作一个 char first = argv[1] 并使用 first 进行转换,这很奇怪,无论输入如何,我都得到了 17。

我很困惑。这是怎么回事?

最佳答案

尝试使用 atoi(argv[1])(“ascii 到 int”)。

关于Char 未转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9777117/

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