今までに見たソースコードで一番感動したのは deux

■ このスレッドは過去ログ倉庫に格納されています
2010/01/12(火) 23:23:19
やっぱりこれです
while(*src++ = *dst++) ;
・ポインタの型によってインクリメントの適量を判断して加算してくれる点
・行末の ;
・終了判定
無駄も過剰もなくって感じで好きです

前スレ
http://pc12.2ch.net/test/read.cgi/tech/1037458703/
2010/01/12(火) 23:26:20
srcとdstが逆なので0点
2010/01/12(火) 23:27:43
演算子のオーバーロードでちゃんと
srcからdstに代入されるようになっているから
4デフォルトの名無しさん
垢版 |
2010/01/12(火) 23:29:39
>>1
要するに stos[b/w/d] だろ
2010/01/12(火) 23:44:16
>>3
ほんとC++は何でもありだな
2010/01/13(水) 02:01:36
過保護ってやつか
7デフォルトの名無しさん
垢版 |
2010/01/13(水) 06:56:38
>>3
左から右に代入に変更してあるってことか?アホじゃないのか?
それだったら -> を左から右への代入ってことにすればいいんじゃないのか?
2010/01/13(水) 10:15:37
こういうので感動できないのは、俺が年だからかなぁ。 こういう書き方出来ると分かっても、使わないなぁ。
9デフォルトの名無しさん
垢版 |
2010/01/13(水) 12:04:53
昔は再帰の書き方で感動したこともあったけど
今は別にって感じだな
枯れちまって情熱がもうないのかもしれん
2010/01/13(水) 12:09:23
int main()
{
return main();
}
2010/01/13(水) 12:20:51
これ有名な技法でしょ。しかも代入方向間違ってるし。
2010/01/13(水) 12:41:49
>>8
Cは実質アセンブラなんだから
movem (a0)+, (a1)+
見たいな事は出来ないと困る
2010/01/13(水) 12:46:40
フラグが使えないのにアセンブラと言うのは否
2010/01/13(水) 12:47:38
それ、なんか理屈が変だよ。
2010/01/13(水) 13:04:55
ソースって訳じゃないんだけど
感動したものにこんなのがある

SQLで覆面算を解く
ttp://miko.org/~naruto/Artifact/MASKSQL.html
2010/01/13(水) 14:18:44
呼び出し元でバッファサイズと終了条件の設定を保証しないといけないから、
これだけだと危険なコードだよねぇ
2010/01/13(水) 17:47:19
値交換っててっきり一時変数が必要かと思ってたらそうでもなかったんだね

x = x + y;
y = x - y;
x = x - y;
2010/01/13(水) 17:55:28
そうですね
それでうまくいく範囲の値を使っている限りはね
2010/01/13(水) 18:28:37
>>12
アセンブラやってた人間から見たら当たり前だよな
Cで同じことが出来ると言われてもあっそうとしか
2010/01/13(水) 19:23:16
>>1
これってループを抜ける保証があるの?
一見ないように見えるんだけど。
2010/01/13(水) 19:24:31
>>17
http://codepad.org/72Hm2T8T
うまくいかないじゃん。
2010/01/13(水) 19:26:56
>>1
終了条件を満たした直後に2つのポインタがインクリメントされてしまうのが
無駄なような気がしていたあの頃が懐かしい
2010/01/14(木) 14:07:54
>>21
おいおい、doubleなのに%dとか素で言ってるのかw
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況