アカウント名:
パスワード:
char* a, b[10]; a = b; a--;
char? a; /* fat pointer */ char b[10]; a = b; a--; /* ここで例外が発生 */
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ソースを見ろ -- ある4桁UID
バグチェックはうれしいけど・・・・・ (スコア:2, 興味深い)
おかしくないようなコーディングを意図的に行なう場合も
ありましたよね・・・・・
# void *a,b[10] ; a = b[0]; a--;
このような場合はどうやって回避していくのでしょうか・・・・?
『今日の屈辱に耐え明日の為に生きるのが男だ』
宇宙戦艦 ヤマト 艦長 沖田十三氏談
2006/06/23 JPN 1 - 4 BRA
たぶん Cyclone ではこう書くのでは? (スコア:1)
まず、 Cyclone では通常のポインタは a-- のようなポインタ演算が 禁止されています。 ポインタ演算を使用したい時には fat pointer と呼ばれる Cyclone 特有の特殊ポインタを使う必要 があります。
fat pointer を使うと NULL チェックや配列の境界チェックが 入ります。
言語仕様を見ただけで書いているので 間違っているかもしれませんが、 上の C プログラムは 下のようにプログラムすると思われます。
発生した例外は try-catch するようです。
コンタミは発見の母