gpt4 book ai didi

c - 如何在c中读取由 ":"分隔的两个字符串

转载 作者:太空宇宙 更新时间:2023-11-04 00:31:13 24 4
gpt4 key购买 nike

我需要知道如何读取一个字符串并将其一分为二,如下例所示。

我在文件@amanda:@bruna 中有这个字符串,但我不能将其作为单独的词来读取,并且每个词都存储在两个不同的变量中,如下所示:

char userA[20];
char userB[20];
scanf("%s:%s", userA, userB);

你能帮帮我吗?

最佳答案

使用扫描集来防止第一个 %s 消耗整行,因为 %s 只会在遇到空格时停止消耗:

if (scanf("%19[^:]:%19s", userA, userB) == 2)
{
/* 'userA' and 'userB' have been successfully assigned. */
}

其中 %19[^:] 表示最多读取 19 个字符,但在遇到冒号时停止。指定宽度可防止缓冲区溢出。始终检查 scanf() 的结果,它返回所做的赋值次数,以确保后续代码不会处理陈旧或未初始化的变量。

关于c - 如何在c中读取由 ":"分隔的两个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15145365/

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