C 语言中怎么截取字符串的一部分

2025-03-23 18:00:18
推荐回答(3个)
回答1:

可改变数组大小,满足你可能的输入状况。

#include
int main(){
char str[200]; // 假定输入1行字符串,长度在200以内
char s[20][16]; // 假定 用逗号分隔 的部分 约20个,每个长度 不超过16字符
double d[20]; // 假定数据个数 不超过 20 个
int i,j=0,L,n=0;
fgets(str,200,stdin); // 读入一行 字符串,含换行符
L = strlen(str); //计算输入的字符串长度

for (i=0;is[n][j]=str[i]; j ;
if (str[i]==',' || str[i]=='\n') {s[n][j-1]='\0'; j=0; n ;} // 取出 逗号分隔 开的字符串
}
for (i=0;i
j=0;
for (i=0;iif ( sscanf(s[i],"%lf",&d[j]) == 1) j ; // 能转换为数的一个一个转换
}
printf("\n=======values========\n");
for (i=0;i
return 0;
}

回答2:

用memcpy函数。如memcpy(x,y+3,4);*(x+5)='\0';,这样就把字符串y中的下标为3的字符开始的连续4个字符拷贝到了x,然后*(x+5)='\0';在4个字符后补一个'\0'构成字符串。

回答3:

snprintf 你会需要用到这个函数的