使用sscanf分离TCP_1中的TCP和1 SRIO_1中的SRIO和1
时间: 2024-09-06 09:06:10 浏览: 48
sscanf函数
`sscanf` 是一个在C语言中用于从字符串中按照指定格式读取数据的函数。如果您想使用 `sscanf` 来从一个字符串中分离特定的字符组合,比如从字符串 "TCP_1" 中分离 "TCP" 和 "1",以及从 "SRIO_1" 中分离 "SRIO" 和 "1",您可以使用以下方法:
```c
#include <stdio.h>
int main() {
char str1[] = "TCP_1";
char str2[] = "SRIO_1";
// 分离TCP_1中的TCP和1
char tcp[4];
int num1;
sscanf(str1, "%3s_%d", tcp, &num1);
printf("TCP: %s, 1: %d\n", tcp, num1);
// 分离SRIO_1中的SRIO和1
char srio[5];
int num2;
sscanf(str2, "%4s_%d", srio, &num2);
printf("SRIO: %s, 1: %d\n", srio, num2);
return 0;
}
```
在这个例子中,`%3s` 和 `%4s` 用于读取字符串,`%d` 用于读取整数。`%3s` 表示最多读取3个字符(足够存放 "TCP" 或 "SRIO"),`%4s` 表示最多读取4个字符。`_%d` 表示字符串后面跟着一个下划线和一个整数。
运行这段代码后,您将得到如下输出:
```
TCP: TCP, 1: 1
SRIO: SRIO, 1: 1
```
阅读全文