2011-02-05から1日間の記事一覧

Cで代入演算子の評価順

C

*(++p) += *p; とあった場合、左から実行されるようで、つまり #include <stdio.h> int main() { int i[] = {0,1}; int *p = i; *(++p) += *p; printf("%d\n", i[1]); return 0; } の結果が2になります。</stdio.h>

Windowsでコマンドライン引数に改行などが使えることを確認した

a.exe #include <windows.h> int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { MessageBox(0,lpCmdLine,0,0); } a.js (new ActiveXObject("WScript.Shell")).Run("a.exe a\ta\r\nb"); Win98とWin2000でも使えました</windows.h>…

VC++のインラインアセンブラとgccのインラインアセンブラとではかなり違うので大変でした

C

なお、私はアセンブリはよくわかりません。 私の環境 WinXPSP3 CeleronM VC++2010 MinGW 20101030のやつ VC++ __asm add esp,n インテル記法Cの変数をそのままかけるgcc __asm__("addl _n,%esp"); AT&T記法インテル記法と順番が逆レジスタの前に%命令でb,w,l…

IE6でTABLEのDOMを操作するときはTBODYもいれる

IE6ではテーブル要素の動的生成時にtbodyを生成しないとだめみたい 最近IE6を見放してたので気づきませんでしたが、テーブルをうまく生成できてなかったみたいです。 番組表とTruth Table Generatorを直しました。