やっぱりこれです
while(*src++ = *dst++) ;
・ポインタの型によってインクリメントの適量を判断して加算してくれる点
・行末の ;
・終了判定
無駄も過剰もなくって感じで好きです
前スレ
http://pc12.2ch.net/test/read.cgi/tech/1037458703/
探検
今までに見たソースコードで一番感動したのは deux
■ このスレッドは過去ログ倉庫に格納されています
2010/01/12(火) 23:23:19
2010/01/12(火) 23:26:20
srcとdstが逆なので0点
2010/01/12(火) 23:27:43
演算子のオーバーロードでちゃんと
srcからdstに代入されるようになっているから
srcからdstに代入されるようになっているから
4デフォルトの名無しさん
2010/01/12(火) 23:29:39 >>1
要するに stos[b/w/d] だろ
要するに stos[b/w/d] だろ
2010/01/12(火) 23:44:16
>>3
ほんとC++は何でもありだな
ほんとC++は何でもありだな
2010/01/13(水) 02:01:36
過保護ってやつか
7デフォルトの名無しさん
2010/01/13(水) 06:56:382010/01/13(水) 10:15:37
こういうので感動できないのは、俺が年だからかなぁ。 こういう書き方出来ると分かっても、使わないなぁ。
9デフォルトの名無しさん
2010/01/13(水) 12:04:53 昔は再帰の書き方で感動したこともあったけど
今は別にって感じだな
枯れちまって情熱がもうないのかもしれん
今は別にって感じだな
枯れちまって情熱がもうないのかもしれん
2010/01/13(水) 12:09:23
int main()
{
return main();
}
{
return main();
}
2010/01/13(水) 12:20:51
これ有名な技法でしょ。しかも代入方向間違ってるし。
2010/01/13(水) 12:41:49
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
感動したものにこんなのがある
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;
x = x + y;
y = x - y;
x = x - y;
2010/01/13(水) 17:55:28
そうですね
それでうまくいく範囲の値を使っている限りはね
それでうまくいく範囲の値を使っている限りはね
2010/01/13(水) 18:28:37
2010/01/13(水) 19:23:16
2010/01/13(水) 19:24:31
2010/01/13(水) 19:26:56
2010/01/14(木) 14:07:54
>>21
おいおい、doubleなのに%dとか素で言ってるのかw
おいおい、doubleなのに%dとか素で言ってるのかw
2010/01/14(木) 14:25:56
>>23
ごめん。素で言っちゃったw
ごめん。素で言っちゃったw
2010/01/14(木) 14:29:11
2010/01/14(木) 14:32:10
2010/01/14(木) 14:45:26
2010/01/14(木) 22:12:39
xor を使った値交換は超有名かと思ってたけど、知らない人もいるのかね。
>>17 みたいな劣化版を今更発見されても・・・ねえ
>>17 みたいな劣化版を今更発見されても・・・ねえ
2010/01/14(木) 23:31:37
XORが使えない環境もあるのだよ
SQLとか
SQLとか
2010/01/15(金) 00:50:13
xor使って中央値を求めるコードは昔見て感動した
こんな奴。
int median(int x,int y,int z){
return max(x,y)^max(y,z)^max(z,x);
}
こんな奴。
int median(int x,int y,int z){
return max(x,y)^max(y,z)^max(z,x);
}
2010/01/15(金) 02:03:40
ADD 90H
DAA
ADC 40H
DAA
これ考えたやつの頭はどうかしてる。
DAA
ADC 40H
DAA
これ考えたやつの頭はどうかしてる。
2010/01/15(金) 02:20:01
a = max(x,y)
b = min(x,y)
z = a*a - b + 2 * y
という式において、x, y と zの関係を表にすると、以下のように
zが正方形を規則正しく埋めるような形に並ぶ。
00 01 04 09
03 02 05 10
08 07 06 11
15 14 13 12
用途:
x,yの上限が動的に増える2次元配列を、
素のvetorに無理矢理突っ込むのに使ったり…
b = min(x,y)
z = a*a - b + 2 * y
という式において、x, y と zの関係を表にすると、以下のように
zが正方形を規則正しく埋めるような形に並ぶ。
00 01 04 09
03 02 05 10
08 07 06 11
15 14 13 12
用途:
x,yの上限が動的に増える2次元配列を、
素のvetorに無理矢理突っ込むのに使ったり…
2010/01/15(金) 06:16:22
>>28
誰が知らないと言ってるの?
誰が知らないと言ってるの?
2010/01/15(金) 10:50:41
値の交換なんて高々数値1個分のメモリがあればできるのにと思ってたけど、
ROM が数十キロバイトもあるのに RAM が数百バイトなんてマイコンも今時あるんだな。
そら有用だわ。
ROM が数十キロバイトもあるのに RAM が数百バイトなんてマイコンも今時あるんだな。
そら有用だわ。
2010/01/15(金) 12:23:01
xorだと整数型にしか使えないのでは?
2010/01/15(金) 13:43:40
すまん、すでに頭がアセンブラオンリーになってた。w
2010/01/17(日) 13:10:35
Dim ac(10) As Class1
Public Sub Test()
Dim c As New Class1
Dim i As Integer
For i = 0 To 10
Set c = Nothing
Set ac(i) = c
Next i
End Sub
Public Sub Test()
Dim c As New Class1
Dim i As Integer
For i = 0 To 10
Set c = Nothing
Set ac(i) = c
Next i
End Sub
2010/01/26(火) 17:28:08
2010/01/26(火) 17:29:25
おっと、式を忘れていた。
z=(x+y)^2/2+(x+y)/2+y
z=(x+y)^2/2+(x+y)/2+y
2010/03/24(水) 22:18:35
>>1のコードの意味を教えてくれ。構造体のコピー?
2010/03/24(水) 22:22:22
違う。配列のコピー?よくわからんコードには解説もつけてくれるとありがたい。
2010/03/24(水) 22:36:10
2010/03/24(水) 22:38:23
文字列のコピーじゃないかね
文字列の終端には\0があるからそれでループが終わる
K&Rとかに出てきそうな感じ
しかし、>>1って未定義じゃないんだろうか
初級C言語Q&Aの
二つの副作用完了点の間に、オブジェクトの値を2回以上変更している場合、
又は変更した後で新しい値を得ること以外の目的でそのオブジェクトをアク セスしている場合
詳しくないのでわからんけど
文字列の終端には\0があるからそれでループが終わる
K&Rとかに出てきそうな感じ
しかし、>>1って未定義じゃないんだろうか
初級C言語Q&Aの
二つの副作用完了点の間に、オブジェクトの値を2回以上変更している場合、
又は変更した後で新しい値を得ること以外の目的でそのオブジェクトをアク セスしている場合
詳しくないのでわからんけど
2010/03/24(水) 22:56:11
>>43
未定義になるのは、「同一の」オブジェクトの値を二回以上変更した場合な
未定義になるのは、「同一の」オブジェクトの値を二回以上変更した場合な
2010/03/25(木) 18:39:57
把握した。
つまり、このコード自体に意味はないが
while((*src)++ = *dst++)
だったら未定義ということだな
つまり、このコード自体に意味はないが
while((*src)++ = *dst++)
だったら未定義ということだな
2010/03/25(木) 19:03:38
2010/03/25(木) 22:58:42
ここまで何もかも間違っているといっそすがすがしいなw
2010/03/26(金) 05:40:51
2010/03/26(金) 20:10:41
50デフォルトの名無しさん
2010/11/11(木) 20:04:19 ほっしゅ
2010/11/11(木) 21:04:20
馬鹿ばっか。w
52デフォルトの名無しさん
2010/11/12(金) 16:16:41 >>1見てわからんとか、Cの初級者以下じゃないか。
ム板ってこんなに程度が低くなってたのか。
ム板ってこんなに程度が低くなってたのか。
2010/11/12(金) 18:37:43
>>2
warosu
warosu
2011/11/12(土) 10:42:10.24
>>1
デバックしにくいダメコードだな
デバックしにくいダメコードだな
2011/11/12(土) 12:51:15.21
まさかの1年
56デフォルトの名無しさん
2011/11/14(月) 21:53:40.55 お
57デフォルトの名無しさん
2011/11/15(火) 07:26:30.94 だれか>>31教えてください。
58デフォルトの名無しさん
2011/11/15(火) 21:06:15.22 どこかのスレでみたこれ。
/*
ここに処理
//*/
最初の/*を//*にすればどーたらこーたら
/*
ここに処理
//*/
最初の/*を//*にすればどーたらこーたら
2011/11/16(水) 10:56:24.84
#if 0
#endif
なら感動した
#endif
なら感動した
2011/11/18(金) 15:19:39.54
>>58
これ確実なの?未定義っぽいけど…。
これ確実なの?未定義っぽいけど…。
2011/11/18(金) 20:19:39.09
>>60
確実じゃないの?
場合によるけど。
/*例1
/*コメントのネストはNG*/
//*/
/*例2
//このコメントはネストしてもOK
//*/
/*例3
//*//この状態はNG
ようはコンパイラが/*を見つけたら*/がくるまでコメントと見なす機能と//のコメントを上手く使ってるという事で。
確実じゃないの?
場合によるけど。
/*例1
/*コメントのネストはNG*/
//*/
/*例2
//このコメントはネストしてもOK
//*/
/*例3
//*//この状態はNG
ようはコンパイラが/*を見つけたら*/がくるまでコメントと見なす機能と//のコメントを上手く使ってるという事で。
62デフォルトの名無しさん
2011/11/19(土) 16:29:55.61 うっ
2012/02/18(土) 01:26:16.96
char main[]={0xC9};
関数=コードというのは分かっていたんだが、ここまでストレートに書けるモノなのかと衝撃を受けた。
関数=コードというのは分かっていたんだが、ここまでストレートに書けるモノなのかと衝撃を受けた。
2012/02/18(土) 01:58:42.21
何も起きない
2012/10/08(月) 20:24:41.73
/**/
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国の渡航自粛要請1カ月 大阪の観光バス予約ゼロ、東北にも波及 [蚤の市★]
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★12 [蚤の市★]
- 【神戸】エレベーター「かご」なく男性医師が転落死 大手「三菱電機ビルソリューションズ」の担当者、安全装置切り放置か [ぐれ★]
- 女性天皇「賛成」69%、将来の皇位継承「不安」68%…読売世論調査 [蚤の市★]
- 不倫疑惑の永野芽郁さん、CM削除ドミノの違約金“やはり発生は免れない”可能性 約10億円になる見込み、本人は全額支払う覚悟 [牛丼★]
- 【群馬】横断歩道を渡っていたNHKアナウンサーが車にはねられ骨折などの重傷 前橋市 [ぐれ★]
- 日本人がホルホルの対象にしている生物、海外にも生息すると判明 [603416639]
- 無責任な大人が「不登校でいいんだよ」とか言ってるけどさ
- 【悲報】ドイツ人「なんで日本人って自炊するの?出来合の惣菜や冷食食った方が楽でコスパいいやん。そんなんだから低生産性なんだよ [786648259]
- 底辺テイカー気質Vtuberを破壊する遊びが闇深いと話題に [922647923]
- 休日にコンビニ行って値札見ずに食いたいもの買って食いまくる行為wwwwwwwwwwwwww
- 趣味に年50万って多い?
