gpt4 book ai didi

c - 使用c语言分割字符串

转载 作者:行者123 更新时间:2023-11-30 17:55:48 28 4
gpt4 key购买 nike

我有一个包含以下行的文件:

0: 1(ab) 6(a)
1: 3(b) 4(a)
2: 5(a) 3(ab)

我想分割这些行来获取值,并将它们以某种方式存储在数组或其他东西中。

任何帮助!

更多说明

0、1、2 是图形的峰值。

对于第一个峰值 0,我们有两个弧 1 和 6,括号内是弧的值。

最佳答案

fscanf 似乎工作正常,正如 @Adeel 所建议的:-

#include<stdio.h>

int main()
{
int peak, arc1, arc2;
char v1[100], v2[100];
scanf("%d: %d(%s %d(%s", &peak, &arc1, &v1, &arc2, &v2);
v1[strlen(v1)-1] = 0; // clear the closing parentheses
v2[strlen(v2)-1] = 0; // clear the closing parentheses

printf("%d, %d, %s, %d, %s", peak, arc1, v1, arc2, v2);
}

需要清除,因为字符串读得太远。如果输入没有任意空格,这将起作用。对于这些情况,可能需要 strtok 等。

测试:-

C:\Users\user\Desktop>test.exe
0: 1(ab) 6(a)

输出:-

0, 1, ab, 6, a

关于c - 使用c语言分割字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13950216/

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