c语言怎样从字符串中提取数字
在C语言中,可使用库函数和循环来从字符串中提取数字。下面是一种常见的方法:
sscanf
函数:sscanf
函数可以从字符串中依照指定的格式提取数据。首先,使用sscanf
函数将字符串中的数字提取到一个变量中。#include <stdio.h>
int main() {
char str[] = "abc123def456";
int num;
sscanf(str, "%*[^0123456789]%d", &num);
printf("提取到的数字为:%d
", num);
return 0;
}
上述代码中,%*[^0123456789]
表示跳过非数字字符,%d
表示提取整数。sscanf
函数的返回值表示成功匹配并提取的参数数量。
#include <stdio.h>
int main() {
char str[] = "abc123def456";
char num_str[10] = ""; // 存储提取到的数字字符串
int num = 0; // 存储提取到的数字
int i = 0;
int j = 0;
while (str[i] != '