真/偽を表す返値って?!
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG正常:0
エラー:-1
とするルールって、昔からありますけど、発祥はどこなんですかね。
JavaScriptなんかだと、boolean(true/false)の他に、
if文等では、「数値の0」、空文字列""、null、undefined、NaNを
false、それ以外はtrueとして扱われますね。
お上の都合もあって、コーディングルールを統一する時に
色々面倒なんですよね...
おそらく過去にもこういうスレあったんだろうとは思うんですが、
現行スレにはないし、倉庫漁るのも...だったので新規一本立ちしてみます。
0002デフォルトの名無しさん
NGNGそんなルールねーよ。
0003デフォルトの名無しさん
NGNG例外あるかな?
0004デフォルトの名無しさん
NGNGだから-1なだけでは?
整数値返すべき関数のエラー値を負の数で表現すると
扱いやすいとか、そんな理由は無いかなぁ?
0005デフォルトの名無しさん
NGNG>だから-1なだけでは?
Cだと !0==1 だけど?
0006デフォルトの名無しさん
NGNG~(0x00) = 0xFF
# やべ、チルダでよかったっけ?マチルダさ〜ん
0007デフォルトの名無しさん
NGNG00081
NGNG勤めてる方の意見も聞いてみたいです。
大抵の方は気にせずに、正常:0 エラー:-1にしてるのかな。
私自身が前に勤めていた時はどうしていたか、記憶にないです...鬱
今現在、個人的には正常:1 エラー:0が好きなんですが...異常ですか 笑
0009
NGNG0010デフォルトの名無しさん
NGNGダサい設計どこもしとらん (組み込みとかは別だろうが)。
0011デフォルトの名無しさん
NGNGintで返すなら0=正常、それ以外=エラー(エラーコード)
今時ならbooleanで返して例外投げるか、Win的にするなら
GetLastErrorとか使うか
0012デフォルトの名無しさん
NGNGC++, Java はともかく、
Cに例外ってありましたっけ。
ってもしやC99には取り入れられた?
00131
NGNGASPでエラーチェック関数用意した時とか...
0014デフォルトの名無しさん
NGNGhttp://www.geocities.co.jp/SiliconValley/1002/c99d/
0015デフォルトの名無しさん
NGNG死んだ>俺が
0016デフォルトの名無しさん
NGNG電圧低い→false、0
電圧高い→true、1
0017デフォルトの名無しさん
NGNGinlineがCでも使えたなんてしらなんだ。
0018デフォルトの名無しさん
NGNG>>17
http://www-cms.phys.s.u-tokyo.ac.jp/~naoki/CIPINTRO/gccextend.html
おもしろいよ。もし例外が使えるCの処理系があるなら教えて欲しいです。
0019デフォルトの名無しさん
NGNG"OK", "NG"
"YES", "NO"
"TRUE", "FALSE"
"GOOD", "BAD"
・・・
しかも統一されていない。
1グローバル変数に値を入力する。
2関数を呼ぶ
3戻り値チェック
4OKならこの関数の結果がグローバル変数へ代入されている。
NGなら前に呼んだ関数の結果がグローバル変数へ代入されたまま。
COBOLのプログラムをCへ忠実に移植したものです。
かなり古いCOBOL仕様です。70年代。
0020デフォルトの名無しさん
NGNG「正常」は1種類しかないけど、「失敗」には何種類もあるので、
正常:0 エラー:その他 のほうがやっぱり合理的ではないでしょうか?
0021デフォルトの名無しさん
NGNGを探す方が難しいのではないか?LSI C-86試食版とかか。
0022デフォルトの名無しさん
NGNG>最近のはほとんど C++ 対応だから
Cとしてコンパイルさせたときも例外使えるのか?
0023デフォルトの名無しさん
NGNGエラー原因は別の変数使う。
if (func()) //成功
if (!func()) //失敗
0024デフォルトの名無しさん
NGNG0025デフォルトの名無しさん
NGNGオープンソースで作ってるなら話はべつだが、使えるもの使わん奴は
ただの車輪屋さんだぞ。ちなみに数年前の gcc はオプションで例外
使えるようになってたが、よくコンパイルで「構文が複雑すぎる」と
文句いわれてた。
0026デフォルトの名無しさん
NGNG駄目駄目なC屋が書いたコードはconst性のチェックでひっかかって
コンパイルできず、Cとしてコンパイルするに1票
002826
NGNGC屋が書いたライブラリを使う羽目になるとconst_castしまくりなんだけど。
俺の周りだけ?
002926
NGNG実際に今も2ch見ながらCのコード書いてる。
0030デフォルトの名無しさん
NGNG0031デフォルトの名無しさん
NGNG■ このスレッドは過去ログ倉庫に格納されています