■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50

プログラマが2chを救う!?

168 :79 :2001/08/26(日) 01:13
someReplace と doReplace をまとめました。
>>145 さん。指摘どうもです。

/*
someReplace

src の中の str0 をすべて str1 に置き換えた文字列を des に入れて返す。
des は呼び出し側で十分なメモリ取っといてな
*/
int someReplace(char * src, char * des, char * str0, char * str1 )
{
char temp[SIZE_BUF];
int str0_length = strlen(str0);
int str1_length = strlen(str1);

/* 置き換える文字列を取っとく */
strcpy( des, src );

/* まだ文字列が残っていればループ */
while (des) {

/* 置き換えるべき文字列の位置を取得 */
des = strstr( des, str0 );
if (des == NULL) {
break;
}

/* 部分文字列以後の文字列を一時保存 */
strcpy(temp, des + str0_length);

/* des に書き戻す */
strcpy(des, str1);
strcat(des + str1_length, temp);

/* 部分文字列以後の文字列の位置を返す */
des += str1_length;
}

return 1;
}

231KB
新着レスの表示

スレッドリストへ戻る 全部 前100 次100 最新50

0ch BBS 2004-10-30