そのため、文字列を受け取り、特殊な形式の文字を取り除き、後で処理するために別の文字列に割り当てる関数があります。
サンプル呼び出しは次のようになります。
act_new("$t does $d");
$t と $d を取り除き、2 番目の文字列を「 do 」のままにする必要がありますが、何も割り当てません。私はかなりの数年間活動を休止していましたが、プログラミングに戻ってきました。これは他の誰かのコード (MUD コードベース、Rom) ですが、ポインターの割り当てに関する基本的な何かが欠けているように感じます。任意のヒント?
(これは切り捨てられたコードです。残りは、ずっと後まで str や point に対する操作を行いません)
void act_new(const char *format)
{
const char *str;
char *point;
str = format;
while ( *str != '\0' ) {
if ( *str != '$' ) {
*point++ = *str++;
continue;
}
}
}