【動くんか?】摩訶不思議なコード【何語?】

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
ネタのようなコードやトリッキーなコードから、
禁止されていることの多い構文を多用しまくったコードまで

あなたの知っている環境で実行できるなら言語は問いません。(出来るだけ環境を書いてください。)
iocccからの引用は自重汁。

掲載されたコードを使う人は、コードをよく吟味してから使いましょう。
2デフォルトの名無しさん:2007/08/19(日) 21:59:06
つ Amazon.co.jp: Short Coding ~職人達の技法~: 本: Ozy,やねうらお
http://www.amazon.co.jp/exec/obidos/ASIN/4839925232/aaaaab0c-22/ref=nosim/
3デフォルトの名無しさん:2007/08/20(月) 18:19:03
やねという時点で読む気が削がれる
4デフォルトの名無しさん:2007/08/21(火) 05:07:50
>>3
禿同
5デフォルトの名無しさん:2007/08/21(火) 10:37:13
余り面白くないけどこんなのとか?
void toHex(char * buf, unsigned char foo)
{
if (bar == NULL) return;
static const char bar[] = "0123456789abcdef";
*buf++ = (foo >> 4)[bar];
*buf++ = (foo & 0xf)[bar];
*buf = '\0';
}
6デフォルトの名無しさん:2007/08/22(水) 00:06:17
7デフォルトの名無しさん:2007/08/22(水) 00:12:39
import std.stdio;
void main(){ writefln="Hello World!"; }
8デフォルトの名無しさん:2007/08/23(木) 01:01:50
+++++++++[>++++++++>+++++++++++>+++++<<<-]>.>++.+++++++..+++.>-.
------------.<++++++++.--------.+++.------.--------.>+.
9デフォルトの名無しさん:2007/08/23(木) 10:00:23
C言語で確か main に何か数値を代入してるコードあったよな
あれ見たときは本当に何してるのか解らなかったw
10デフォルトの名無しさん:2007/08/23(木) 18:02:02
int main[]=[-61];
こんなやつ?>>9
11デフォルトの名無しさん:2007/08/24(金) 05:04:01
ちょっと違った気がするけどまぁそんな感じ
main() がなくて代わりに main に何か代入して動いてるコード
12デフォルトの名無しさん:2007/08/24(金) 13:12:05
>>9
つ Hello, binary world!
ttp://binary.nahi.to/b2con2006_sato.pdf
13デフォルトの名無しさん:2007/08/25(土) 18:04:29
とりあえず期待age
14デフォルトの名無しさん:2007/08/26(日) 10:26:31
>>12
こいつ相当ヒマ人だな…www
15デフォルトの名無しさん:2007/08/27(月) 18:17:23
16デフォルトの名無しさん:2007/08/27(月) 20:03:49
>>15
こいつは毎度毎度wwwwwww
17デフォルトの名無しさん:2007/08/27(月) 20:30:57
>15
昔ベーマガでこんなコード結構見たような気がするのは俺だけかwww
18デフォルトの名無しさん:2007/08/29(水) 00:30:22
>>15
気合入ってるなーww
19デフォルトの名無しさん:2007/10/06(土) 00:29:34
>>15
業者師ね

兼雑記 - 2006-12-19
http://d.hatena.ne.jp/shinichiro_h/20061219
20デフォルトの名無しさん:2007/10/24(水) 11:51:11
00101000 10000001 01001100 10000001 01000101 10000011 11010110 10000001
01000101 01100000 00101001 10111100 10101110 11001110 11011110 10110000
11011101
21デフォルトの名無しさん:2007/10/24(水) 12:47:07
00101011 11000000 10110100 01001100 11001101 00100001
22デフォルトの名無しさん:2007/10/24(水) 13:17:58
+タ+ノエRオP+チイHヘ!イeヘ!イlヘ!ヘ!イoヘ!イ,ヘ!イWヘ!イoヘ!イrヘ!イlヘ!イdヘ!イ!ヘ!+メ+ノイ=ア0+ムヘ!+メイ:+ムヘ!イPヘ!イrヘ!イeヘ!イsヘ!ヘ!+メ+ノイPア0+ムヘ!イAヘ!イnヘ!イyヘ!+メ+ノイPア0+ムヘ!イKヘ!イeヘ!イyヘ!イ!ヘ!+タ+ノエ8オ0+チヘ!+タエLヘ!

上の文字列をメモ帳か何かでSJIS形式で保存して拡張子を.comにして開いてみ


誰かもっと短いのorカタカナ無し版頼む
23デフォルトの名無しさん:2007/10/24(水) 13:22:28
>>22
ハローワークか

原理を教えて
24デフォルトの名無しさん:2007/10/24(水) 13:23:53
>>23
>19
25デフォルトの名無しさん:2007/10/24(水) 13:30:04
>>24
なるほど・・・
CD21が大変だね
26デフォルトの名無しさん:2007/10/24(水) 15:41:05
hello!$@3メ0ニX5eeヘ!1ミヘ!ヘ .
2722:2007/10/24(水) 22:33:12
>>23
自己展開のコードを考えるのはかったるいので普通に手汗した。
で、全角文字になるようなコードをがんばって別の奴で置き換えた。
28デフォルトの名無しさん:2007/10/24(水) 23:04:04
>>26
すげーw

DXとDIとSIとSPの初期値によっては危険なコードだなw
29デフォルトの名無しさん:2007/10/30(火) 19:56:44
>>22
SS5Q05a1PPIY45PSSSIIQa345BB1G01G73515OO155BK0100Hellonbworldcf

[:alnum:]ではろー
30デフォルトの名無しさん:2007/11/08(木) 17:58:38
main(a){printf(a,34,a="main(a){printf(a,34,a=%c%s%c,34);}",34);}
31デフォルトの名無しさん:2007/11/08(木) 18:11:01
>>30
自己ソースを表示するプログラムか。
32デフォルトの名無しさん:2007/11/08(木) 18:20:38
[user@host tt]$ cat > foo
#!/bin/cat
[user@host tt]$ cat foo
#!/bin/cat
[user@host tt]$ chmod +x foo
[user@host tt]$ ./foo
#!/bin/cat
[user@host tt]$
33デフォルトの名無しさん:2007/11/09(金) 16:55:24
エラー無視
'-----------------------設定ここから------------------
MES=『スクラッチクジ』'上に表示するメッセージです。
確率="50"'% あたりの確率です。
'-----------------------設定ここまで------------------
母艦の、幅は、100
母艦の、高さは、100
母艦の、スタイルは、4
母艦の、タイトルは、「スクラッチクジ」

母艦浮上
*スタート
画面クリア
あ=0
(0,0)へ、移動。
MESと、表示。
100の、乱数。
もし、それ<確率ならば、(
結果=あたり
)
違ったら、(
結果=はずれ
)
(30,40)から、(92,80)へ、円形。
母艦の、マウス押した時は、(あ=1)

以下略
34デフォルトの名無しさん:2007/11/09(金) 17:00:00
// http://proforceone.web.fc2.com/ ⇒ Processed input data
LuckyStarNowOnAir
youtube.com/v/xDMVJoB38_g&l=239
youtube.com/v/YolSEnVLxes&l=211
youtube.com/v/XNN1v2Bw9f8&l=181
youtube.com/v/MwdTWiOC5dA&l=207
youtube.com/v/O1ZZUgk2uv0&l=175

// http://proforceone.web.fc2.com/ ⇒ Calculation processing
SIT='http'+'://youtubetv.atspace.com/?'; LIST=new Array;
DT=$.split(" ").join("").split(" ").join("").split("\n").join("").split("youtube.com/v/");
for(i=1;DT.length>i;i++){DX=DT[i].split('&l=');LIST[i-1]=DX[0]+DX[1];}br();write(" <a href="+SIT);
for(i=0;((LIST.length>i)&&(5>i));i++){write(LIST[i]);if(LIST.length>i+1){write("+");}}
write("@"+DT[0]+">YouTubeTV@"+DT[0]+"</a>");
35デフォルトの名無しさん:2007/11/18(日) 09:41:22
>>5 は何の言語だ???
36デフォルトの名無しさん:2007/11/18(日) 09:55:39
どうみてもCだろ?
37デフォルトの名無しさん:2008/02/08(金) 03:41:50
>>33
可能です。
以上。
↓次どうぞ
38デフォルトの名無しさん:2008/08/04(月) 15:16:17
あげ
39デフォルトの名無しさん:2008/08/04(月) 22:17:22
何故あげたし
40デフォルトの名無しさん:2008/08/26(火) 19:14:44
何故さげたし
41デフォルトの名無しさん:2008/08/27(水) 08:36:53
%BB%!!PP]5+d-@!P^X5^A-@@P_!-15@@P%BB%!!PP[5TB%T"P_]U3)UX=00r!-00<@v@,@@@@v@@@@@@
@@@@PZ@@@!CC@@@L@!%BA%!!P_%""P!E@!EB!EE!EG!EJ!EL!EN!EP!ER!EV!EX!E\!E^!E`XP5|J-@@
1E@XP5vB%v"1EBXP5E>-!~-!@1EJ5&@5"@1EEXP5AK-E@1EGXP56H-J@1ELXP5#E-r@1ENXP52!-`@1E
PXP5#$-!`1ERXP5$$-p!1EVXP5+5-@`1E\XP5$n-p!1E^XP5-C-`!1EX1E`XP5BB%!"P[XP!GP!GR5)2
-@c1GPX5>A-@@1GR@@@@48656C6C6F2C20576F726C6421##

テキストで保存してcomで実行。改行と空白は抜いて。
一番後ろの@@@@から##までの数値(hex)を変えると楽しめる 文字数は可変長
小文字にしたりしないで。エラーチェックしてないから

あーあ、ASCIIで安全なコード作るのに6時間もかかっちゃった。
42デフォルトの名無しさん:2008/08/27(水) 08:38:26
しかも下げ忘れるしこれから仕事だし死ねるorz
43デフォルトの名無しさん:2008/08/27(水) 11:57:58
textcomとか見飽きた
44デフォルトの名無しさん:2008/08/27(水) 12:17:48
じゃぁ何か見飽きてないネタの一つでも希望
45デフォルトの名無しさん:2008/08/27(水) 13:11:53
com2txtなどで自由に作れるからなぁ
4641:2008/08/27(水) 16:00:46
>com2txt
便利なツールがあるもんだなぁ。今度暇な時ASCIIで同じの作ってみよう。
80文字×7行で書けたら某スレに貼れるな。
47デフォルトの名無しさん:2008/11/06(木) 21:52:17
クYG-DFPZクCJ-BAヘ!5IEヘ!Hello,World!$
48デフォルトの名無しさん:2009/04/07(火) 02:41:35
スレ違い
49デフォルトの名無しさん:2009/04/24(金) 10:24:47
>>41
>PXP5#$-!`1ERXP5$$-p!1EVXP5+5-@`1E\XP5$n-p!1E^XP5-C-`!1EX1E`XP5BB%!"P[XP!GP!GR5)2
                                          ~~~~~
EXILE
50222.248.109.70:2009/08/17(月) 17:45:10
自動焼人 ★ = 自動保守 ◆KAWORUKOFI = 自動保守#K9K?_D[L

名言集 その4
『俺の経歴カックイイだろ?』

http://yutori7.2ch.net/test/read.cgi/news4vip/1249830540/ ID:PVAf+dux0 = 自動焼人 ★

> 984 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:11:14.95 ID:PVAf+dux0
> 俺の簡単な年表(笑)
> 高二秋:自前のパソコンゲット
> 高三春:コテハンとしてデビュー、指揮官見習い
> 高三秋:指揮官デビュー
> 大一:新しい武器の開発や、突撃で数々の戦歴を残す
> 大二春:規制系キャップ取得、第一線から退く
> 大二夏:ネットでのゲーム作成プロジェクト始動
> 大二秋:政治系オフに参加
> 大二冬:最後の突撃、華々しく散る
> 大三春:政治系活動を本格始動
> 大三夏:三度目の選挙へ
>
> おまえらは、後を継ぐなよw

----------------------------------------------
この自動焼人 ★メールマガジンの配信停止をご希望される方は
http://qb5.2ch.net/test/read.cgi/sec2chd/1250169591/
にて自動焼人 ★までご連絡ください
51デフォルトの名無しさん:2010/03/24(水) 23:00:50
#include <stdio.h>
int a
// 特殊な条件ではこの計算結果が0になるって噂
= 0.1+0.1+1.5
;
main(){printf("%d\n", a);}
52デフォルトの名無しさん:2010/03/29(月) 10:39:24
>>51
それはコンパイラのiso準拠度低過ぎだろ。
若しくは、実数を扱えないサブセットライブラリだとか。
53デフォルトの名無しさん:2010/03/29(月) 19:17:48
void main()
{
   int d, o=1, OTZ=3;
  d=('x') / (*"_") / OTZ-3 / (o^3^o);
}
54デフォルトの名無しさん:2010/04/03(土) 13:10:46
>>52
ヒント: 噂の2バイト目
55デフォルトの名無しさん:2010/04/03(土) 18:39:06
>>54
把握。しかしこれはひどいww
56デフォルトの名無しさん:2010/04/08(木) 11:28:13
うぉ、cp932限定の罠か。最近cp932なんか使わないから忘れてたよ。
5751:2010/04/11(日) 14:50:29
ようやく規制が解除された。

>>56
しかも、cp932で書かれたコードをcp932を解釈しない処理系でコンパイルしたときのみ有効。


これ、実体験を元に書いた。俺がもらったソースコード(Windows上で開発)に
// なんたらかんたらの表
// なぜかこのコメントを外すとLinuxでコンパイルできない
int hogehoge_table[X_MAX][Y_MAX];
みたいなのがあったんだ。
58デフォルトの名無しさん:2010/04/11(日) 15:20:54
― ソ Ы 噂 浬 欺 圭 構 蚕 十 申 曾 箪 貼 能 表 暴 予 禄
兔 喀 媾 彌 拿 杤 歃 濬 畚 秉 綵 臀 藹 觸 軆 鐔 饅 鷭
59デフォルトの名無しさん:2010/04/12(月) 23:40:20
>>57
それは当たり前では?コード変換しない奴が悪い。
EUCしか解釈しない処理系にSJIS(MS漢字コード)を喰わせたらエラーになるのは当たり前の事。
60デフォルトの名無しさん:2010/04/13(火) 23:47:53
>>59
よく読めよ

61デフォルトの名無しさん:2010/04/15(木) 00:22:17
>>59
当たり前なんだけど、開発してるのが素人集団みたいなもんだったんでなぁ。
nkfコマンドなんぞ知ってるわけもない、Windows上ですら文字コードを適当に処理してくれるエディタを持ってない、
sjisの問題点どころか、sjisって言葉すら知ってるか怪しい人たち。
そんな人たちが、VC++で書いたコードをFFFTPでLinuxにうpして、動かして、sjisで吐き出したファイルをFTPから持ってくる。そんなことしてた。

ていうか、FFFTPに文字コード自動変換ついてなかったっけorz
62デフォルトの名無しさん:2010/04/15(木) 01:13:11
>>61
サロゲートペアの処理とか書かせたら面白い事になりそうですね。
63デフォルトの名無しさん:2010/04/15(木) 03:26:55
間違ってリトルエンディアン前提で実装するんだろ?
勘弁してくれよ本当。
64デフォルトの名無しさん:2010/04/15(木) 12:56:08
>>63
でもって、「リトルエンディアンってなんですか?」となるわけだw
65デフォルトの名無しさん:2010/04/17(土) 12:46:30
>>62
バイナリでファイル入出力できない人たちにそんな無茶ぶりしてやらんで下さい。
66デフォルトの名無しさん:2010/04/17(土) 21:20:52
なるほど、研修でscanfよりfgetcを先に教わった俺は少数派と。
67デフォルトの名無しさん:2010/04/17(土) 22:56:11
まともなところはscanfは使うなと教わる
68デフォルトの名無しさん:2010/04/18(日) 01:11:03
>>67
確かにその通りではあるんだけど、fgets+sscanfにしようとすると、
#define BUF_LEN 100
char buf[BUF_LEN];
fgets(buf, BUF_LEN, stdin);
の3つが余計に付け加わることになって(要素数のマクロは入れないことにしても2行)
初心者にとってのおまじないの数を無闇に増やすのはあんまりよくないんだよなぁ。

入力教えるのを後回しにして先に配列教えりゃいいんだろうけど、早くやってしまいたいしなぁ。
69デフォルトの名無しさん:2010/04/18(日) 02:55:04
>>66はfgetsではなくfgetcをry
70デフォルトの名無しさん:2010/04/20(火) 00:11:10
>>69
fgetcより先にgetchar教えろよという気はある。
71デフォルトの名無しさん:2010/04/20(火) 01:44:32
いまどきは kbhit() が最初だったりする

エクスプローラーからダブルクリックするとか
IDE から F5 とかで実行すると
エラーがあっても一瞬で消えて(ry
72デフォルトの名無しさん:2010/04/22(木) 10:00:26
>>71
その用途こそ、getchar()で充分なんだが。
73デフォルトの名無しさん:2010/05/26(水) 11:35:32
デバッグ必要無いならCtrl-F5でいいし、必要ならブレークポイント置くかな
74デフォルトの名無しさん:2010/05/26(水) 11:46:58
int main()
{
return main();
}
こういうのコンパイルすると戻り値なんになるの?
75デフォルトの名無しさん:2010/05/26(水) 11:53:40
>>74
恐らくは、スタックオーバフローを起こして異常終了する。
76デフォルトの名無しさん:2010/05/26(水) 11:59:11
>>74
つ[キーワード: 再帰]
>>74
処理系によってはただの無限ループになる。


再帰の展開をちゃんとやってくれる素敵ないくつかの処理系なら。
78デフォルトの名無しさん:2010/05/26(水) 23:54:48
>>74
鼻から悪魔が出る。
79デフォルトの名無しさん:2010/05/27(木) 10:47:19
>>74
        pushl %ebp
        movl %esp, %ebp
        subl $24, %esp
        andl $-16, %esp
        movl $0, %eax
        addl $15, %eax
        addl $15, %eax
        shrl $4, %eax
        sall $4, %eax
        movl %eax, -4(%ebp)
        movl -4(%ebp), %eax
        call __alloca
        call ___main
        movl 12(%ebp), %eax
        movl %eax, 4(%esp)
        movl 8(%ebp), %eax
        movl %eax, (%esp)
        call _main
        leave
        ret
80デフォルトの名無しさん:2010/05/27(木) 11:01:59
>>78
出たこと無いなあ
81デフォルトの名無しさん:2010/05/27(木) 20:06:16
それはでないということにはならない。
82デフォルトの名無しさん:2010/05/27(木) 22:36:50
>>74はどうがんばっても、まともに動かないけど、
mainの直接呼び出し自体は許されてるんだっけ?
gccじゃ一応、
int main(int argc, char **argv)
{
return argc ? argc*main(argc-1, 0) : 1;
}
動いた。

あと、こんなのはsegfaultで落ちた。なんでだ?
int main2(int argc, char** argv)
{
return 0;
}
int (*main)(int,char**) = main2;
83デフォルトの名無しさん:2010/05/28(金) 08:31:27
>>82
>mainの直接呼び出し自体は許されてるんだっけ?
鼻から悪魔が出る。

>あと、こんなのはsegfaultで落ちた。なんでだ?
リンカがすること、結果バイナリの実行の
されかたを考えてみろ。
84デフォルトの名無しさん:2011/07/15(金) 16:19:47.81
『鼻から悪魔が出る』の出典元は何ですか?
85デフォルトの名無しさん
http://catb.org/~esr/jargon/html/N/nasal-demons.html
によると
comp.std.c
らしい