c
今回は資料の作成が後手に回ってしまい、運営の方々や発表者の皆様には大変迷惑をおかけしました。さて、今回は ctypes 拡張モジュールに関する内容を発表させていただきました。ctypes拡張モジュールView more presentations from Moriyoshi Koizumi. php-i…
ついやってしまうので自戒を込めて。(C99) #include <stdio.h> struct vector { double elts[3]; }; #define create_vector_1(a, b, c) (struct vector){ a, b, c } static inline struct vector create_vector_2(double a, double b, double c) { return (struct vec</stdio.h>…
次のような C のコードを gcc でコンパイルしたとき、シンボル「a」のデバッグ情報がどのように DWARF になっているかを dwarfdump で見てみると... enum X { A }; typeof(A)* a; なんかとても残念なことになっていた。 LOCAL_SYMBOLS: <1>< 45> DW_TAG_enum…
PyObjC とか RubyCocoa とかの話ではなく、C で書くって話。 なんかも結局 #import 使ってるので全部自前で用意した次第。 $ gcc -o test test.c -framework AppKitなどとしてコンパイルして実行すると空のウィンドウが出現します。Objective-C 2.0 の API …
もうすっかり時期を逃した感があるけど、とりあえず書いてしまったので貼っときます。美人ゴルフをするのに、実在するwww.bijint.comのサーバにアクセスするのは、とてもよくないことになるかもしれませんよね!! なので練習用のサーバを書きましたよ東條さん…
typedef char c;typedef int i;i sprintf(c*,c*,...);i socket();i close(i);i connect(i,i*,i);i read(i,c*,i);i write(i,c*,i);i***gethostbyname(c*);c*strstr(c*,c*);c*malloc(i);i open(c*,...);i main(){c*h="www.bijint.com",*t,*z;i b[]={0x50000002…
追記: ソースコードを少し修正。あと、このやりかただと複数起動ができないので何か方法を考える必要がありそう。 追記2: 実行前にgvimをOLEオートメーションサーバとして登録する必要あり。gvim.exe -register。詳しくは help if_ole を。gVimにはCOMインタ…
C99のCommittee Draft(N1124)を読んでいて、また目から鱗。以下のスクリプトがコンパイルできるという話。 #include <stdio.h> main() { <% puts("Hello world!"); %> } なんと、JSPスクリプトが記述できる…のではなく、これは次の仕様によるものでした。P64、PDF 上</stdio.h>…
リンク元をみたら「!strcmp」というクエリでここにたどり着いた方がいました。残念ながらその方の期待には応えられなかったのですが、「!strcmp」については一言言っておこうかなと。strcmp() は 3 つの状態を表す結果を返すので、プレディケイトではないの…
open-std.org のC99 Rationaleを読んでいて、興味深い一節を発見。 6.5.2 Postfix operators 6.5.2.1 Array subscripting The C89 Committee found no reason to disallow the symmetry that permits a[i] to be written as i[a]. The syntax and semantics …