可改变数组大小,满足你可能的输入状况。
#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;i
if (str[i]==',' || str[i]=='\n') {s[n][j-1]='\0'; j=0; n ;} // 取出 逗号分隔 开的字符串
}
for (i=0;i
j=0;
for (i=0;i
}
printf("\n=======values========\n");
for (i=0;i
return 0;
}
用memcpy函数。如memcpy(x,y+3,4);*(x+5)='\0';,这样就把字符串y中的下标为3的字符开始的连续4个字符拷贝到了x,然后*(x+5)='\0';在4个字符后补一个'\0'构成字符串。
snprintf 你会需要用到这个函数的