> > while(p[i]){if(p[i]==a)p[i]=b;i++;} > > do{if(*p==a)*p=b;}while(*(++p)!='\0); > > for(;*p!='\0';p++)if(*p==a)*p=b; > > while(*p&&(*p==a&&((*p=b)||1))&&p++); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > for式が最短だなヽ(´ー`)ノ > 解説キボン(;´Д`) while(*p && ( (*p == a && *p = b) || 1) ) && p++); これベースで解説すると while( *p ←*p が '\0' つまり 0 でなければ成立 && ( (*p == a && *p = b) || 1) ← *p == a なら *p に b 入れる。 でなければ true で成立させとく && p++); ←ポインタのインクリメント 参考:2000/05/19(金)21時03分52秒