C言語なら俺に聞け( ..
608:606
08/05/11 23:35:17
すいません、書き込んだ後、インデントがされてないのに気がついつきました。同じソースですが
int main(void)
{
char src_str[]="str1 str2 str3 str4 str5";
char *next;
char *buff=src_str;
while((next=strsplit(buff, " "))!=NULL){
// 空白文字が2個以上続いた場合はbuffにはナル文字が入っている
if(buff[0] != '\0')
fprintf(stderr, "buff=%s, next=%s\n",buff, next);
buff=next;
}
return 0;
}
// 文字列をdelimstrを区切り文字列として分割し、区切後の文字列へのポインタを返す
char *strsplit(char* str,const char* delim_str)
{
char* delim_point = strstr(str,delim_str);
const size_t delim_len = strlen(delim_str);
size_t i;
if(delim_point == NULL) return NULL;
else {
*delim_point = '\0';
for(i=0;i<delim_len;i++) delim_point++;
}
return delim_point;
}
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5373日前に更新/213 KB
担当:undef