目前想到很蠢的方法如下:
24 while (i < strlen(str)){
25 //printf("%c\n", str[i]);
26 if((str[i] == ' ') && (flag==0)){
27 flag=1; i++;
28 }
29 if(flag==0) str2[i]=str[i];
30 if(flag==1) {str3[j]=str[i]; j++; }
31 i++;
32 }
改法二
24 while(str[i]!='\0' && str[i]!=' '){
25 str2[i]=str[i];
26 i++;
27 }
28
29 while(str[i]!='\0'){
30 str3[j]=str[i];
31 i++;
32 j++;
33 }
請問各位大大還有更好的做法嗎?
謝謝~謝謝~
※ 引述《blueguan ()》之銘言:
: 開發平台(Platform): (Ex: Win10, Linux, ...)
: LINUX
: 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
: GCC
: 問題(Question):
: 用第一個空格為分隔點,將一段含有空格的字串1分為2
: 餵入的資料(Input):
: This is a book.
: 預期的正確結果(Expected Output):
: This
: is a book
: 目標是能簡化,不想要1個1個char來做copy
: 想請問大家是否有很棒的作法...
: 感謝大家