gpt4 book ai didi

c - 在 C 中输入,特例?

转载 作者:太空宇宙 更新时间:2023-11-04 07:02:16 25 4
gpt4 key购买 nike

你好,

我有以下代码:

 43     while (TRUE)
44 {
45 printf("Swipe Card: ");
46 scanf("%s;%s=%s", id, banner, cp);
47 printf("%s\n%s\n%s\n", id, banner, cp);
48 ProcessStudent(banner, file);
49
50 }

我已经动态分配了 idbannercp,但是当我尝试打印它们时(我这样做只是为了检查他们的内容)一切都只被纳入'id'。我尝试读取的字符串看起来像这样 %GRE068?;01540594=000331!

最佳答案

scanf 不会尝试对格式字符串进行完整模式匹配。 %s 输入格式只是读取下一个空格(或 EOF)之前的所有内容。之后,它会寻找 ;,因为它没有找到它不会解析任何其他输入。

如果您想在其他字符处停止,请使用 [^char]

scanf("[^;];%[^=]=%s", id, banner, cp);

关于c - 在 C 中输入,特例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36608221/

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