どっち派議論スレッド PART1
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG最近のコレクションじゃー、1から始まって
なんか分かりにくいYO!
0002デフォルトの名無しさん
NGNG何?
0003デフォルトの名無しさん
NGNGだって、わかりやすいもん。
そもそも数字は0からって考え方がおかしいYO!
0004デフォルトの名無しさん
NGNG最近は、モー娘。トレカ集めてます。
0005デフォルトの名無しさん
NGNG0006デフォルトの名無しさん
NGNG0007デフォルトの名無しさん
NGNG2と言わずに。
0008デフォルトの名無しさん
NGNGハァ?
0009デフォルトの名無しさん
NGNGどっちでも、いいと思います。
ぼくは、C言語もできるので0からかな
0010デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNG>>3
0012デフォルトの名無しさん
NGNG参考にしてくれ。
--------------------終了--------------------
0013デフォルトの名無しさん
NGNG--------------------再開--------------------
0014デフォルトの名無しさん
NGNG0015デフォルトの名無しさん
NGNGモー娘。行け!
0016デフォルトの名無しさん
NGNG0017デフォルトの名無しさん
NGNGそれとも 三項演算子派?
この前、 三項演算子使ったらT谷に怒られた
0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNG0020デフォルトの名無しさん
NGNG激しく同意
0021デフォルトの名無しさん
NGNG0022デフォルトの名無しさん
NGNG自作自演
0023デフォルトの名無しさん
NGNG丸山?
高橋?
0024デフォルトの名無しさん
NGNGおれも、よく泣かされたよ。
0025デフォルトの名無しさん
NGNG0026デフォルトの名無しさん
NGNG橋本名人なら知ってるが・・・。
0027デフォルトの名無しさん
NGNG0028デフォルトの名無しさん
NGNGソース派?
醤油派?
0029デフォルトの名無しさん
NGNGけちゃっぷ。
0030デフォルトの名無しさん
NGNG0031デフォルトの名無しさん
NGNG将棋の人
0032デフォルトの名無しさん
NGNGこれはもう、ある意味究極の質問だ。
毎朝悩んでる。時間無いのに悩んでる。
これのせいいで、いっつも電車に乗り遅れそうになる。
マジなやむよ。ホント。
0033デフォルトの名無しさん
NGNG激しく同意!
つか目玉焼きにソースや醤油かけるのですか?
0034デフォルトの名無しさん
NGNG将棋の人は
ハブだろがゴルァ!
0035デフォルトの名無しさん
NGNGじゃぁ、交互に食えばいいじゃん
0036デフォルトの名無しさん
NGNG0037デフォルトの名無しさん
NGNGと。
0038デフォルトの名無しさん
NGNG今の名人は丸山ですが?
0039デフォルトの名無しさん
NGNG俺はやっぱり塩コショウだね。
焼き方はどう?お湯で蒸し焼きにするとか、ひっくり返すとか。
俺は弱火で白身だけ火を通す。黄身はほとんど生というやつ。
# だからプログラミングとなんの関係が?
0040デフォルトの名無しさん
NGNGどっち?
0041デフォルトの名無しさん
NGNG0042デフォルトの名無しさん
NGNG0043デフォルトの名無しさん
NGNG0044デフォルトの名無しさん
NGNG結論に達してしまいました
それを言ったらこのスレ終わりやんってやつです
で、その結論ってのは
ケースバイケース
0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNGデフォとか言う人、キモチワルイ
0047デフォルトの名無しさん
NGNG>>41
0048デフォルトの名無しさん
NGNG0049デフォルトの名無しさん
NGNG0050デフォルトの名無しさん
NGNGと
char* p;(革新派)
0051デフォルトの名無しさん
NGNG0052デフォルトの名無しさん
NGNGなんでも略しゃーいいってもんでもねーべ。
0053デフォルトの名無しさん
NGNGでも参照は CString& bって書くなぁ。
0054デフォルトの名無しさん
NGNGdefault、規定(値)、そのままにしておくとそうなる。
0055デフォルトの名無しさん
NGNG0056規定(値)のななしさん
NGNG0057デフォルトの名無しさん
NGNGif (a == 0) 派?
if (!a) 派?
0058デフォルトの名無しさん
NGNG0059デフォルトの名無しさん
NGNGa が真偽を表す目的なら後者。
0060デフォルトの名無しさん
NGNG文脈による
0061デフォルトの名無しさん
NGNGそろそろPart2用意したほうがいいんじゃないか?
0062デフォルトの名無しさん
NGNG0063デフォルトの名無しさん
NGNGもうすぐ 70 だもんな。
0064デフォルトの名無しさん
NGNGfor (;;)
どっち?
俺は定数置きたくないし
中途半端に賢いコンパイラなら
前者にウォーニング出すので後者
0065デフォルトの名無しさん
NGNG0066デフォルトの名無しさん
NGNG} while (0)
これ、最強。
0067デフォルトの名無しさん
NGNG}
or
if (a != 0) goto xxxx
0068デフォルトの名無しさん
NGNGこれ、最強。
0069デフォルトの名無しさん
NGNGどっち派?
0070デフォルトの名無しさん
NGNGもとさいきょ
0071デフォルトの名無しさん
NGNGウププ
0072デフォルトの名無しさん
NGNG定説
0073デフォルトの名無しさん
NGNGと
char* p, q;(革命派)
0074デフォルトの名無しさん
NGNGおいおい、意味違うじゃーねーか!
0075デフォルトの名無しさん
NGNG0076デフォルトの名無しさん
NGNG0077デフォルトの名無しさん
NGNGtypedef char* pchar; (改革寄り中道派)
0078デフォルトの名無しさん
NGNGchar* q:
char * p;(無派閥)
0079デフォルトの名無しさん
NGNG0080デフォルトの名無しさん
NGNG#define pchar_t char*
pchar_t p
0081デフォルトの名無しさん
NGNG配列添字の話に戻るけど、1から始まるのが自然だろ。
Σkiなんていう表記で、iを0からk-1にはしないだろ。
1からkだよ、普通。まあ、C言語の場合に0から始めた方が、
いろいろと好都合だということは解るが。
0082デフォルトの名無しさん
NGNG0083デフォルトの名無しさん
NGNG教科書よーく見てみ
0084デフォルトの名無しさん
NGNGみたいな循環する数を求めたい時は0-originの方がなじむね。
0085デフォルトの名無しさん
NGNGソダネ
0086デフォルトの名無しさん
NGNG教科書....ウププ
0087デフォルトの名無しさん
NGNGうんこさん
さて、どっち?
0088デフォルトの名無しさん
NGNGうんち君
派。
0089デフォルトの名無しさん
NGNGうちのオカンはうんこさんって言うなぁ。鬱
0090デフォルトの名無しさん
NGNGいつ使うのさ?
0091デフォルトの名無しさん
NGNGif (1 == xxx)
どっちな?
0092デフォルトの名無しさん
NGNG1はxxxか?
と解釈すれば前者。
0093デフォルトの名無しさん
NGNGとタイプミスる可能性があるので
1 == xxx
だな
0094デフォルトの名無しさん
NGNG0095デフォルトの名無しさん
NGNGつーか覚えたて厨房だろ
0096デフォルトの名無しさん
NGNG0097デフォルトの名無しさん
NGNG0098デフォルトの名無しさん
NGNG僕はRADとしてはVJ++が好き。
0099デフォルトの名無しさん
NGNG同意。
>>93
タイプミス→コンパイラが警告出すよ。
そのためのコンパイル作業でもあるんだし。
0100デフォルトの名無しさん
NGNGぼくのコンパイラ警告出してくれない。。。鬱だ
0101デフォルトの名無しさん
NGNG0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNG0104デフォルトの名無しさん
NGNGBASIC と C がごちゃになるよ
0105デフォルトの名無しさん
NGNGまじになんなYO!
0106LISPer
NGNGif (eq(xxx, 1))
0107sage
NGNGどうやら93より95のほうが厨房のようだな。
0108デフォルトの名無しさん
NGNGオイオイ
0109デフォルトの名無しさん
NGNG0110デフォルトの名無しさん
NGNGそろそろPART2用意したほうがいいんじゃないか?
0111デフォルトの名無しさん
NGNG| | // /二つ_つ
| | // /二つ./ ) /⌒)_ ._ _ノ
| | // /二つ (ノ / / (__)(_)、 ノ
| | // / i / / Y (_)() く 1000
| | // i ノ _ノ / _ _ノ ノ ) ゲットオ!
| | // / / .i ( / ∠
| | // / / /i ゙-、( ヽ
| | // / /∧ ./ i i n ⌒ヽ'⌒
| | // / / ´Д`) / .ヽ___ノ _ノ/-っ
| | // /. ⌒/ /二二_づー'
| | // / / ./
| | // / / / //
| | // / / / //
| | // / / //
| | // / __/ //
| | // / / // ,,,-''
| | // / / .// ,,,-''
| | / / ./ // ,,,-''
| | ./ / / // ,,,-''
! _ノ ノ .// ,,,-''
/ / // ,,,-'''
./ / // ,,,-''' _,,,,―'''' ̄
// // -''' _,,,,―'''' ̄
_ノ⌒/ / _,,,,―'''' ̄
⊂_/ '''' _____________
_人__  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
て
( タンッ!
0112デフォルトの名無しさん
NGNG0113デフォルトの名無しさん
NGNGLPSTR or char*
さぁ、どっち?
0114デフォルトの名無しさん
NGNG0115デフォルトの名無しさん
NGNGLPBYTE or unsigned char *
どっちだ?
0116デフォルトの名無しさん
NGNGつーかLPSTRなんて使えんのはDOS/Windowsくらいだろ。
選びようがない。
0117デフォルトの名無しさん
NGNG基本的には後者。
ただし、シリアライズみたくデータの長さが重要になるときは移植性を無駄に考慮してBYTEとかWORDとかDWORDとか使う。
0118デフォルトの名無しさん
NGNGWORDという思いっきり環境依存な用語は使いたくないな。
0119デフォルトの名無しさん
NGNG0120デフォルトの名無しさん
NGNG0121デフォルトの名無しさん
NGNGてゆーか、int8やint16やint32が既によく使われてるから
いちいち避けたなんて……ことは……
0122デフォルトの名無しさん
NGNGつーわけで、lpstr_t..lpbyte_t word_t dword_t ulong_t int16_t etc.
>>120
typedefされた型
0124デフォルトの名無しさん
NGNG小文字派同意。
0125デフォルトの名無しさん
NGNGまあ1は牛鮭定食でも食ってなさい、つうことだ。
0126デフォルトの名無しさん
NGNG0127デフォルトの名無しさん
NGNGC/C++では自然な事だよ
0128デフォルトの名無しさん
NGNGFoo *foo = new Foo();
foo->bar();
それとも、
Foo *foo = new Foo();
(*foo).bar();
あるいは、
Foo &foo = *new Foo();
foo.bar();
どれがいい?
0129デフォルトの名無しさん
NGNG0130デフォルトの名無しさん
NGNGWORD ってのは環境依存なんか?
それを避けるためのWORDと思われ
0131デフォルトの名無しさん
NGNGFoo *foo = new Foo();
foo->bar();
だろ
0132デフォルトの名無しさん
NGNGどうかと思われ。
そろそろ、ひきこもり卒業したら?
0133デフォルトの名無しさん
NGNGプププ
いるよね。やたらtypedefしたがるやつ。
0135デフォルトの名無しさん
NGNGふつーtypedefですが何か?
そのまま使うやつはド素人。
0136デフォルトの名無しさん
NGNG話が噛み合ってないyo?
0137デフォルトの名無しさん
NGNGポインタの -> のほうが見た目カコイイ!
0139デフォルトの名無しさん
NGNGいるいる。意味のないtypedefの人。
>135
臨機応変って知ってる?
0140デフォルトの名無しさん
NGNG気にしなくていいんでないの?べつに。
0141デフォルトの名無しさん
NGNGint16/int32/int64とかは意味ありまくりだけど
0142デフォルトの名無しさん
NGNGFoo &foo = *new Foo();
foo.bar();
なんてコードを常用し、あまつさえ周囲にそれを強要するやつが
実在するの?信じらんな〜い。
0143デフォルトの名無しさん
NGNGshort/long/_int64
0144デフォルトの名無しさん
NGNG信じらんな〜い。
0145デフォルトの名無しさん
NGNGWORDやint64の場合は話が違ってくるけど、
でも、こんなのはあんまり自分で定義するもんじゃない気がする。
0146デフォルトの名無しさん
NGNGつーか sizeof(WORD)==2の人は 8086+16bitOS使ってるんでしょうか?
0148デフォルトの名無しさん
NGNG0149デフォルトの名無しさん
NGNGExcelで使ってるよ。
カーソルを移動させずにシートをスクロールできて、意外と便利。
viでいうCtrl+E, Ctrl+Yみたいな感じ。
0150デフォルトの名無しさん
NGNGわしらドキュソのとこなんて、違う処理系に移植する
仕事なんてないしー。
0151デフォルトの名無しさん
NGNGいいたいことは分かるが、
その1行目はこのスレでは禁句。
0152150
NGNGすまそ。みなさん熱く語ってください
0153デフォルトの名無しさん
NGNG違う処理系とかじゃなくて、大昔のヤツを移植することは極まれに
存在するのでチョットは気をつけたほうがいいかも、、、
大抵、移植じゃなくて新規に書き直すこともしばしば、、、
0154デフォルトの名無しさん
NGNG「思われ」禁止!禁止禁止〜!
0155デフォルトの名無しさん
NGNG0156デフォルトの名無しさん
NGNG0157追加
NGNG0158デフォルトの名無しさん
NGNG0159デフォルトの名無しさん
NGNG禁止とメタ禁止を区別せよ。
0160デフォルトの名無しさん
NGNG0161デフォルトの名無しさん
NGNG「禁止」、とquoteされてるから大丈夫って事?
(define (禁止) (禁止))
じゃなくて、
(define (禁止) '(禁止))
だから安全(w
0162デフォルトの名無しさん
NGNG永遠に制御が帰ってこないな。
0163デフォルトの名無しさん
NGNG0164デフォルトの名無しさん
NGNG0165デフォルトの名無しさん
NGNG0166禁止mania派
NGNG違反した名無しさんは裸でグランド一周!
0167終了mania
NGNGよってこのスレは、
−−−−終了−−−−
0168デフォルトの名無しさん
NGNG−−−−再開−−−−
0169デフォルトの名無しさん
NGNGよってこのスレは、
−−−−再開−−−−
0170デフォルトの名無しさん
NGNGchar,short,longでええんでないの?
俺、なんか変なこと言った?
0171デフォルトの名無しさん
NGNG0172デフォルトの名無しさん
NGNG画面の下派?
画面の右派?
0173デフォルトの名無しさん
NGNG下付きにきまってんだロ!
もしもテメーが上付きだったら、コロスぞゴルァ!
0174デフォルトの名無しさん
NGNG0175デフォルトの名無しさん
NGNG0176デフォルトの名無しさん
NGNG0177デフォルトの名無しさん
NGNGショートカットクリックしようとするたびに邪魔になるんだな
0178デフォルトの名無しさん
NGNGtypedef とか define してるやつの気がしれねぇ
0179デフォルトの名無しさん
NGNG「ボタンをクリックすると表示されます」
「ボタンがクリックされると表示します」
どっち派?
0180デフォルトの名無しさん
NGNG使わないでいいよ。typedef, define
0181デフォルトの名無しさん
NGNGポータビリティーってなんじゃ?オシエテクレー
sage
0182デフォルトの名無しさん
NGNG0183デフォルトの名無しさん
NGNGハイハイ
0184デフォルトの名無しさん
NGNGどーよ
0185デフォルトの名無しさん
NGNGなにかを思うことはないと思うけど、
どーよ
0186デフォルトの名無しさん
NGNG「-1000から1000まで表せるデータ型」が欲しいならshortやintで良い。
でも、「バイナリファイル中の32bitフィールド」を表したいとき
intやlongじゃだめだろお。int32_t(uint32_t)じゃないと。
0187デフォルトの名無しさん
NGNG0188デフォルトの名無しさん
NGNGひょっとして<stdint.h>って知らないのか?
0189デフォルトの名無しさん
NGNG0190デフォルトの名無しさん
NGNGこんな保証はどこにもないが?
0191デフォルトの名無しさん
NGNG知らねぇ。知りたくもねぇ。
0192デフォルトの名無しさん
NGNG「ボタンをクリックすると表示されます」 のほうが
しっくりくるけどな
0193デフォルトの名無しさん
NGNGお前かっこ悪いよ
0194デフォルトの名無しさん
NGNGどこがカコワルイですか?
0195デフォルトの名無しさん
NGNG0196デフォルトの名無しさん
NGNGC99から正式にサイズ明示した型
サポートしたみたいだけど遅すぎ。
0197デフォルトの名無しさん
NGNGそれはカコワルイですね
0198デフォルトの名無しさん
NGNG保証あるよ。
shortもintも最低-32767〜+32767の範囲は表せることが
規格で保証されてる。
0199デフォルトの名無しさん
NGNG今どきstdint.hくらい入ってない処理系なんて捨てろ
0200デフォルトの名無しさん
NGNGlong >= int >= short >= char の大小関係だけじゃないっけ?
0202200
NGNG0203デフォルトの名無しさん
NGNG0204デフォルトの名無しさん
NGNG0205デフォルトの名無しさん
NGNG同意。
今から書くのにtypedef ... int32とかしたらただの恥
0206デフォルトの名無しさん
NGNG0207デフォルトの名無しさん
NGNGVC6? 捨てろ。
VC7にはstdint.hあるから。
0208デフォルトの名無しさん
NGNG0209デフォルトの名無しさん
NGNG大小関係に加えて、最低限の範囲が保証されてます。
SHRT_MINは-32767以下、SHRT_MAXは32767以上など。
0210デフォルトの名無しさん
NGNGstdint とか言い始めるやつって…。
0211デフォルトの名無しさん
NGNG禿同。
0212デフォルトの名無しさん
NGNGlimits.hは使ってイイデスカ?
0213デフォルトの名無しさん
NGNG0214デフォルトの名無しさん
NGNGって言われたらどうしよう・・
0215デフォルトの名無しさん
NGNG使っていいわけねえだろ。
ポータビリティの話すんなら標準へッダなんかあてにすんな!
0216デフォルトの名無しさん
NGNGもしかして君はautoconf使う派?
0217デフォルトの名無しさん
NGNG逆だろ(藁
>>210-211
ポータビリティってどういう意味で使ってる?
「太古の処理系でも動く」のはポータビリティと関係ないだろう。
0218デフォルトの名無しさん
NGNG「太古の処理系」をどう定義するかによるな。
0219デフォルトの名無しさん
NGNGなるほど。じゃあ1年ほどしてstdint.hがたいていの
処理系に入ってから使えと?
0220デフォルトの名無しさん
NGNGstdintを使う事は当分無い。
0221デフォルトの名無しさん
NGNG今から書くプログラムでもHUGEとか書かないと
「ポータブル」とは言ってくれないってこと?
0222デフォルトの名無しさん
NGNG0223デフォルトの名無しさん
NGNGtypedefしたいしたいしたい
0224デフォルトの名無しさん
NGNG捨てなきゃならんのか。鬱
0225デフォルトの名無しさん
NGNGそれは状況による(w
基本的なコンテナなんか作るとき(つまりDOSでも使えそうな時)
には、いまだにFARとか書くかも。
WinMainから書くようなやつには使わない。
0226デフォルトの名無しさん
NGNGそれともザイログ派?
0227デフォルトの名無しさん
NGNGザイロク派なんているのか?
0228デフォルトの名無しさん
NGNG0229デフォルトの名無しさん
NGNG8ビットの話かと思われ
0230デフォルトの名無しさん
NGNGハズー>>227
0231<stdint.h>
NGNG* Based on ISO/IEC SC22/WG14 9899 Committee draft (SC22 N2794)
*
* THIS SOFTWARE IS NOT COPYRIGHTED
*
* Contributor: Danny Smith <[email protected]>
*
* This source code is offered for use in the public domain. You may
* use, modify or distribute it freely.
*
* This code is distributed in the hope that it will be useful but
* WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
* DISCLAMED. This includes but is not limited to warranties of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
* Date: 2000-12-02
*/
0232デフォルトの名無しさん
NGNG思われ禁止なのに・・・
0233デフォルトの名無しさん
NGNG禁止も禁止だよ
0234デフォルトの名無しさん
NGNGなにが言いたいの?
はっきりおっしゃい!おとこらしく
0235デフォルトの名無しさん
NGNG0236デフォルトの名無しさん
NGNGこれってどのコンパイラ用?
そのまま他へ持っていって動くもんじゃないだろう。
にしてもNOT COPYRIGHTEDってアホ丸出しだな。
それともNZっていまだに方式主義なのか?
0237デフォルトの名無しさん
NGNG231は「stdint.h持ってないならこれ取ってきて使えば」と
言いたいのではないかと
0238デフォルトの名無しさん
NGNGそれなら、そうと言ってくれればいいのにね。
0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNG0241デフォルトの名無しさん
NGNG自己中だし
0242デフォルトの名無しさん
NGNGだから駅でエロチャットやって嫌われるのか>もれ
0243デフォルトの名無しさん
NGNGいや、NZもベルヌ条約に加盟してる。
無方式で著作権は自動発生する。
0244名無しさん@Emacs
NGNG231 じゃないですが、なんでアホ丸出しなんですか?
「NOT COPYRIGHTED」という文句が意味をなさないからですか?
> それともNZっていまだに方式主義なのか?
「COPYRIGHT を明示しなければ認めてくれない」のが方式主義だと
理解しています。「NOT COPYRIGHTED」という文句を
書くのと、その国が方式主義であることの関連が見いだせないんだけど。。
ヒマなら教えていただけると幸甚
0245231
NGNGstdint.hはC9xなヘッダだからこんなもん
あてにするなって意味で貼ったんだよ。
>236
これはcygwinのヘッダ。
ライセンスについてはヘタにGPLにしようもんなら
カタギは誰も使わないだろうから正しい判断だと思うよ。
せっかくのpublic domainなんでアップロードしといた。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/file/999294620_24/stdint.h
0246デフォルトの名無しさん
NGNG_t は漏れも嫌い。
しかし最近やたらついてるね。size_t, ptrdiff_t, ...
始めたバカはCMUでMach書いてたやつらか?
void*がない頃、char*をcaddr_tと書きはじめやがった。
0247デフォルトの名無しさん
NGNG0248デフォルトの名無しさん
NGNG無方式主義(世界の主流)なら、何も書かなくても著作権が発生するし、
著作権(著作人格権)は放棄するなんてことはできない。
だからPublic Domainなんていうものはもう存在しない。
0249デフォルトの名無しさん
NGNGCompuServe全盛期辺りか。
0250デフォルトの名無しさん
NGNG_tはtypeの略だろう。
そのうち、変数には_v、定数には_Cとか書かされる。
0251248
NGNG著作権は放棄できたから、PDソフトというのもあり得た。
NOT COPYRIGHTEDと言うのは、そのころなら意味をなした。
今では無意味。どころか読む方を混乱させるだけ。
0252デフォルトの名無しさん
NGNG0253デフォルトの名無しさん
NGNG法的に厳密な表現ではないが、
意味するのは「著作権の主張はしないよ」ってことでしょ。
0254デフォルトの名無しさん
NGNG0255デフォルトの名無しさん
NGNG>しかし最近やたらついてるね。size_t, ptrdiff_t, ...
最近って程、最近か?
0256デフォルトの名無しさん
NGNG・Copyrightは主張する。
・同一性保持権の侵害については何のアクションも起こさ
ないことを宣言する(改変を許す)。
・著作財産権は放棄する。
これをちゃんと書いたら、例えばBSDライセンスみたいになる。
0257デフォルトの名無しさん
NGNGハンガリアン記法が好きな人はきっと..._tも好きなのだろう。
for (int_t iCounter_v = 0; iCounter_v < MAX_COUNTER_C; ...)
とか書くのだろう。
0258デフォルトの名無しさん
NGNG_tは特に問題じゃない。型名だから。
変数名に付けてるのがウザイ!
用途を書け!
0259デフォルトの名無しさん
NGNG予約語には_rを、記号には_sを付けるってのはどうだ?(defineで)
for_r lparen_s int_t i_v equal_s 0 semicolon_s i_v less_s 10 semicolon_s
i_v plus_s plus_s rparen_s
こう書くなら_tも意味はありそう。
0260デフォルトの名無しさん
NGNG0261デフォルトの名無しさん
NGNG0262デフォルトの名無しさん
NGNG0263デフォルトの名無しさん
NGNG0264デフォルトの名無しさん
NGNG堂井
0265デフォルトの名無しさん
NGNGstatic sub Func()
Dim Flag As Boolean
Flag = Not Flag
If Flag Then
sub Func()
Static Flag As Boolean
Flag = Not Flag
If Flag Then
どっちがよいのでしょうか?先生がた
0266デフォルトの名無しさん
NGNGそんなことより頼むから、まともに動くソフト作ってけろ。
0267デフォルトの名無しさん
NGNG0268デフォルトの名無しさん
NGNG0269デフォルトの名無しさん
NGNGvoid Foo(CString &szHoge) がええんかー
どっち派?
0270デフォルトの名無しさん
NGNG//1.データメンバ直接操作
class Cfoo {
public:
int Member;
};
//2.メンバ関数で間接操作
class Cfoo {
protected:
int m_Member;
public:
int GetMember() {return m_Member;};
void SetMember(int n) {m_Member = n;};
};
0271デフォルトの名無しさん
NGNGint FMember;
public:
int Member(){ return FMember; }
void Member(int AMember){ FMember = AMember; }
};
0272デフォルトの名無しさん
NGNG0273デフォルトの名無しさん
NGNG1.if( (aaa) &&
(bbb) )
2.if( (aaa)
&& (bbb) )
どっちが正解なので?
0274デフォルトの名無しさん
NGNG1.
行末の && が文が終わっていないことを明示するから。
0275デフォルトの名無しさん
NGNG2.
行頭の&& が文の始まりでないことを明治するから。
0276デフォルトの名無しさん
NGNG正解なんてないのよ。うんこちゃん。
0277273
NGNG早レスありがとう。結局自分の好きにしろということでよろしいんですね
0278デフォルトの名無しさん
NGNGif はいいけど whileとかで && 使うなってのはどう?
バグの温床だそうだ
0279デフォルトの名無しさん
NGNGなぜに?
0280278
NGNGその人の経験的にループ条件に使うと良く間違うらしい
ループ条件に && 使うよりは
ループの先頭で if break 使えってさ
0281デフォルトの名無しさん
NGNGオントコ?
0282デフォルトの名無しさん
NGNGそんなこと間違うヤツはCやめれ
0283デフォルトの名無しさん
NGNGhttp://piza.2ch.net/log/prog/kako/955/955325519.html
0284デフォルトの名無しさん
NGNG多分そいつの条件文が間違ってるんだよ
0285デフォルトの名無しさん
NGNGフォルス?
フェールス?
どっち派?
0286デフォルトの名無しさん
NGNGif(!(a || b))
どっち歯?
0287デフォルトの名無しさん
NGNGふぉ〜るすって言ってる
0288デフォルトの名無しさん
NGNGif (a || b)
0289デフォルトの名無しさん
NGNG0290デフォルトの名無しさん
NGNG「ファールス」だと思ってたよ。。。
0291デフォルトの名無しさん
NGNGワーニング派であれば、それなりに首尾一貫していると思える。
0292デフォルトの名無しさん
NGNGフォルスだと思ってたのだが
http://dictionary.goo.ne.jp/cgi-bin/ej-more_print.cgi?MT=FALSE+&ID=EJ-109440.txt&sw=0
によればフォールスのようですな…
0293デフォルトの名無しさん
NGNGif (a+b)
とやって、a が -b だったりしてバグを出す。
0294デフォルトの名無しさん
NGNGdefaultはデフォールトなのか!
http://dictionary.goo.ne.jp/cgi-bin/dict_search.cgi?MT=default&sw=0
0295
NGNGa++;
0296デフォルトの名無しさん
NGNG0297デフォルトの名無しさん
NGNG0298デフォルトの名無しさん
NGNG0299デフォルトの名無しさん
NGNG0300デフォルトの名無しさん
NGNG0301デフォルトの名無しさん
NGNG0302デフォルトの名無しさん
NGNGa / 2 派?
0303デフォルトの名無しさん
NGNG#ifndef _HOGEHOGE_
と
#if !defined(_HOGEHOGE_)
どっち?
0304デフォルトの名無しさん
NGNG0305デフォルトの名無しさん
NGNG0306デフォルトの名無しさん
NGNG特に必要がないときは素直に*で書く。
0307デフォルトの名無しさん
NGNGa * 0.5 ってこと?
0308デフォルトの名無しさん
NGNGどうせコンパイラが最適化してくれるので
脈絡に沿ったほうを使う。
0309デフォルトの名無しさん
NGNGときとばやいによりけり
0310デフォルトの名無しさん
NGNGうちのコンパイラ、最適してくれんし。
除算は関数コールするし。
8びと鬱
0311デフォルトの名無しさん
NGNGああそうか。今の場合は/
0312デフォルトの名無しさん
NGNG初期化時に1回だけやる計算をわざわざシフト演算で置き換えてる
奴がいたな。
さすがにアレはどうかと思った。
0313デフォルトの名無しさん
NGNGif(b)
if(c)
・・・
と
if(!a) return;
if(!b) return;
if(!c) return;
・・・
エラー処理や後処理の有無・内容にもよるが、傾向としてどっち派?
0314デフォルトの名無しさん
NGNG後者
0315デフォルトの名無しさん
NGNGインデントが深くなるけど
1600x1200x2の画面でコーディングしてるから
全然気にならない。
0316デフォルトの名無しさん
NGNG前者に決まっている、終わらせられる関数からはすぐに抜けろ
0317ちがう
NGNG0318デフォルトの名無しさん
NGNGreturnもbreakもしたくないとき後者は
if (!a) goto skip;
if (!b) goto skip;
if (!c) goto skip;
になっちゃうよね。
0319デフォルトの名無しさん
NGNG後者->前者の書き換えを良くやるので
それだったら最初から前者
0320デフォルトの名無しさん
NGNG本質な処理は前者。しかし、インデントが深くなりすぎるとき、>>318
みたいに逃げることはごくたまにある。
0321デフォルトの名無しさん
NGNG0322デフォルトの名無しさん
NGNGさんせー
0323デフォルトの名無しさん
NGNG常識とゆーか、好みの問題なんでどっち派で
よいような気がする俺は、のは、ひょっとして
非常識?
0324デフォルトの名無しさん
NGNGelse
if (!b) {}
else
if (!c) {}
else {
}
0325デフォルトの名無しさん
NGNG0326デフォルトの名無しさん
NGNGだって分かりやすいもん。
条件に合わなかったら即落第。
〜の条件を満たしていなければサヨウナラ
ッてかんじで、書いていて気持ち良いの。
0327デフォルトの名無しさん
NGNG0328デフォルトの名無しさん
NGNGif not b then exit;
if not c then exit;
0329326
NGNGおれDelphi使いだYO!
0330デフォルトの名無しさん
NGNG0331デフォルトの名無しさん
NGNGこんなことを常識とか
のたまうヤツは
非常識
と思われ
ます。
0332デフォルトの名無しさん
NGNG主に後者で、開放とかする時はgotoでerrorに飛ばす。
if (pstr == NULL) return false;
や
if ((src=malloc(...)) == NULL) goto error;
error:
if (src != NULL) free(src);
みたいな。
0333デフォルトの名無しさん
NGNG>if ((src=malloc(...)) == NULL) goto error;
>error:
>if (src != NULL) free(src);
はどうだろう。
if ((src=malloc(...)) == NULL) return;
でええやん
0334332
NGNG説明不足だったかな。実例を1つ(独自実装が多くてすみません):
uriheader uri_new( uriheader cuh , ctchar* uri ) {
uriheader uh=NULL;
if (uri == NULL) return NULL;
if ((uh=memalloc(sizeof(*uh))) == NULL) goto error;
uriheader_init(uh);
if ((uh->uri=str_dup(uri)) == NULL) goto error;
中処理略
return uh;
error:
uri_delete(uh);
return NULL;
}
0335デフォルトの名無しさん
NGNG3つで240円のシーチキンマヨネーズ、
どっちにする?
0336デフォルトの名無しさん
NGNGいまいち分からんのだけど、
これじゃいかんの?
uriheader uri_new( uriheader cuh , ctchar* uri )
{
uriheader uh=NULL;
if (uri == NULL || (uh=memalloc(sizeof(*uh))) == NULL)
return NULL;
uriheader_init(uh);
if ((uh->uri=str_dup(uri)) == NULL){
uri_delete(uh);
return NULL;
}
/* 中処理略 */
return uh;
}
0337334, 332
NGNG個人的主観なのかもしれないが、ifは処理の目的、順序毎に分けたい。
(パラメータのチェック、ヘッダー領域の確保等)
また、{}があると、どの位置で関数、for、while等を抜けるか確認しないと
関数全体の流れがつかめないので、{}の使用は出来るなら避けたい。
で、>>334のようなコーティングにたどり着いた。
0338336
NGNG漏れは>>336のが見やすいと思うんだけどなー
0339デフォルトの名無しさん
NGNG例では、エラーの時はuri_delete(uh);1行だけで一回だけれど、
数行あって、何回も呼び出されるときは面倒・凡長になるし、
エラーの時の処理を変更したいとき困る。
関数内関数があればいいんだけどね。
0340デフォルトの名無しさん
NGNGおかか
0341デフォルトの名無しさん
NGNGやっぱ、自分ならそうすると言うことで >>336 が見やすいな。
あくなでも、好みと慣れの問題やけど。
if (ooo) xxxxxx
か
if (ooo) {
xxxxx
}
後者のほうがデバッグしやすいと思う。
0343デフォルトの名無しさん
NGNGif (NULL == x1_new()) {
return;
}
if (NULL == x2_new()) {
x1_delete();
return;
}
if (NULL == x3_new()) {
x1_delete();
x2_delete();
return;
}
if (NULL == x4_new()) {
x1_delete();
x2_delete();
x3_delete();
return;
}
0344デフォルトの名無しさん
NGNGどうでもいいけど
NULL == hogehoge
と書く奴は死刑と先週決まったはずだが。
0345デフォルトの名無しさん
NGNGまあ普通はそうだけど、関数にするまでもないが書くのが面倒ってことない?
>>343
うん。まあ、こんな場面ならifのネストにするけどね。
0346デフォルトの名無しさん
NGNG初心者なので知りませんでした。
死刑ついでに質問しますが、hogehoge って何ですか?
0347デフォルトの名無しさん
NGNGだれが言い出したのだろう。
出典キボン >> hogehoge
0348デフォルトの名無しさん
NGNGfoo, bar, baz使え
0349デフォルトの名無しさん
NGNGhttp://www.puni.net/~mimori/rfc/rfc3092.txt
これでも読んで勉強しる!
0350デフォルトの名無しさん
NGNG0351デフォルトの名無しさん
NGNG0352350
NGNG0353デフォルトの名無しさん
NGNG0354337, 334, 332
NGNGこれも個人的主観だけど、その用途だけの関数になってしまうのと、
{_uri_new_delete(uh,src);return NULL;}
とかすると、returnを入れる為に{}を使わなければならないから嫌。
return _uri_new_delete(...
とかすると、戻り値の丸投げ、つまりuri_newと_uri_deleteが並列的に
呼ばれているような気がするのと、戻り値がわからないのでもっと嫌。
すこし元ねたから外れるけど、自分はどんな時も戻り値はその関数内に書く。
例えば
bool func ( void* var ) {
if (!func2(var)) return false;
/*func2の戻り値はbool*/
return true;
}
0355私はNULLが嫌いだ
NGNG{
if(uri)
{
uriheader uh=memalloc(sizeof(*uh)));
if(uh)
{
uriheader_init(uh);
uh->uri=str_dup(uri);
if(uh->uri)
{
中処理略
return uh;
}
}
uri_delete(uh);
}
return NULL;
}
自分はいっつもこう書いてる。メリットは
・正常なフローが前半に、異常なフロー・エラーリカバリが後半にきれいに分かれている。
これは例外処理と構造が類似していて理にかなっている。
・ifの条件式が肯定的で分かりやすい。
・ローカル変数のスコープがさらに限定されている。
・エラー処理が簡単に追加できる。
例えばuh->uri==NULLの場合のみ行われる処理をどこに書くかすぐに分かる。
#ところでmemalloc失敗してもuri_delete呼ぶのか?
・各処理がブロック内で完結しているので規模が大きくなったときに分割が容易。
・総じて平坦なコードと比べて試行錯誤することが少なくなる。
・何よりインデントが美しい(藁
0356デフォルトの名無しさん
NGNG醜いなぁ。
0357デフォルトの名無しさん
NGNGなんで死刑なんだ?おまえ、あほだろ!
0358354, 337, 334, 332
NGNG私はインデントが嫌いだ
インデントしなければならないような関数はだいたい分割した方が効率的。
で、正常な処理はまっすぐ進むがベスト。
まあ、>>355はそれはそれで良いんだけどね。
>・ローカル変数のスコープがさらに限定されている。
これには激しく同意。全て冒頭で宣言するのは見通しが悪い。
{}使うときは大いに活用している。でも、
>uriheader uh=memalloc(sizeof(*uh)));
は嫌。自分は構造(struct、union,etc...)を持たない変数は
できる限り0かNULLで初期化している。
>#ところでmemalloc失敗してもuri_delete呼ぶのか?
統一するためと、もしその前に何らかの処理が追加されてもいいように。
まあ呼ばなくても今の所、実害はないが。
無論、uri_deleteはuh != NULLしている。
0359デフォルトの名無しさん
NGNG>は嫌。自分は構造(struct、union,etc...)を持たない変数は
>できる限り0かNULLで初期化している。
いみふめ。
これ何のメリットがあるの?
0360デフォルトの名無しさん
NGNGその方式は一般的に書けばこうなる。
こんなの見たくないよ。
void func()
{
if (step1()) {
if (step2()) {
if (step3()) {
return SUCCESS;
} else {
step3_recovery();
step2_recovery();
step1_recovery();
}
} else {
step2_recovery();
step1_recovery();
}
} else {
step1_recovery();
}
return FAILED;
}
0361デフォルトの名無しさん
NGNG禿同。
0362デフォルトの名無しさん
NGNGまん中がsucc、最後がfailならこれでいいじゃん。
void func()
{
if (step1()) {
if (step2()) {
if (step3()) {
return SUCCESS;
};
step3_recovery();
};
step2_recovery();
};
step1_recovery();
}
return FAILED;
}
0363358, 354, 337, 334, 332
NGNGすまん。それは単なる趣味。あまりメリットはないと思う。
0364デフォルトの名無しさん
NGNGJava/C#なんて気持ち悪くてコード書けなくなるよ
0365363, 358, 354, 337, 334, 332
NGNG言語に応じて考え変えれば、
というか現時点でJava、C#は使えないので無問題。
0366デフォルトの名無しさん
NGNG>>360は一般的に書けばそうなるという話。
もちろん、すべてのstepのエラー処理が必要では無い場合もある。
が、例えばこんな処理の場合は全てのstepでエラー処理が必要。
(当然もっとうまい書き方があるが、>>355のやりかたではこうなるという例)
void func()
{
if (open(file1)) {
if (open(file2)) {
if (write(file2)) {
close(file2);
close(file1);
return SUCCESS;
} else {
log("cant write to file2");
close(file2);
close(file1);
}
} else {
log("cant open file2");
close(file1);
}
} else {
log("cant open file1");
}
return FAILED;
}
0367デフォルトの名無しさん
NGNG1. file1をオープンしてデータを読む
2. file2をオープンしてデータを読む
3. それらを表示する
という単純な処理でも、ここまでひどくなる。
void func()
{
if (open(file1)) {
if (str1 = read(file1)) {
if (open(file2)) {
if (str2 = read(file2)) {
if (display(str1, str2) {
return SUCCESS;
} else {
// エラー処理
}
} else {
// エラー処理
}
} else {
// エラー処理
}
} else {
// エラー処理
}
} else {
// エラー処理
}
return FAILED;
}
0368363, 358, 354, 337, 334, 332
NGNGvoid func() {
if (open(file1)) {
if (open(file2)) {
if (write(file2)) {
close(file2);
close(file1);
return SUCCESS;
}
else log("cant write to file2");
close(file2);
}
else log("cant open file2");
close(file1);
}
else log("cant open file1");
return FAILED;
}
とか
void func() {
if (!open(file1)) {log("cant open file1");goto error;}
if (!open(file2)) {log("cant open file2");goto error;}
if (!write(file2)) {log("cant write to file2");goto error;}
return SUCCESS;
error:
close(file2)
close(file1);
return FAILED;
}
の方が読みやすくない?
0369デフォルトの名無しさん
NGNG漏れも if のすぐあとに比較される側があったほうが
見やすいな。
if (0 > hage)
とか
if (0 == sage)
とかな。
まぁ、どっちゃでもええけど。それをアカンと決め付ける
超ド素人は死刑やな。
0370デフォルトの名無しさん
NGNGうん、読みやすくする書き方はいくらでもある。あれは最悪な書き方。
ただし、>>368の前半の書き方には同意しない。
open(file2)が失敗した場合のエラー処理の流れが見づらいから。
それに、elseと処理文を同一行に書くのも感心しない(個人的嗜好)。
俺はelse blockが1行でも必ず{}で括る(個人的嗜好)。
0371デフォルトの名無しさん
NGNGif (valid_params(param) {
ってのが出てきて、正常処理のコードを読む間、「異常の場合はどうなる?」という
疑問を頭に置いておかなければならない。
何度も「異常の場合はどうなる?」を脳のスタックに積んでいくと、スタックの底が
抜けたりするし。
何十(百)行か読み進んで、
} else {
return FALSE;
}
return TRUE;
とかなってたら、がっくりくる(藁
0372デフォルトの名無しさん
NGNGreturn は 1つの関数で1個だけって習っただろうが!ヴぉけが!
それとも、そんな事も教えてもらってねぇのかぁ?
だから全部ネストするんだよ。これ常識。
0373デフォルトの名無しさん
NGNGワラタ ネタレスマンセー
0374結論
NGNG0375デフォルトの名無しさん
NGNGreturn は 1つの関数で1個だけなんて習ってねえだろ!ヴぉけが!
それとも、そんな事を教えられたのかぁ?
だから読みにくいプログラムが氾濫するんだよ。これ常識。
0376デフォルトの名無しさん
NGNG習うってなんだよ!自分で考えろよ!
教えられないとできねーのかぁ?
だから厨房なんだよ。これ常識
0377デフォルトの名無しさん
NGNGじゃぁ、プログラム言語ってお前が考えたのかよ!
本で読んだとかは、習うにはいらねーのかぁ?
だからプログラマーは自己中なんだよ。これ常識。
0378デフォルトの名無しさん
NGNGそれ提唱したの誰だっけ?
ダイクストラ?
0379デフォルトの名無しさん
NGNG0380デフォルトの名無しさん
NGNG0381デフォルトの名無しさん
NGNG0383デフォルトの名無しさん
NGNGナイスおかか
リターンが一つって、俺独学だから習ってないけど、
やっぱ、危険だから?メモリロケート後の開放が危険にさらされるの?つーこと?
俺、全部.txt形式のままコンパイルしてたから、どうやらC(NOT++)を
やってたみたいなんだ。だからいまだnewなんて使ったことない。
グローバルロックの方がmallocより偉いと思ってたけど、勘違いだって
ここで知ったョ・・・・
0384デフォルトの名無しさん
NGNG>やっぱ、危険だから?メモリロケート後の開放が危険にさらされるの?つーこと?
いや、○○がきちんと出来ていれば、関数の出口は一つになるはずであり、
複数あるのは○○が出来てない証拠、みたいなかんじだったような記憶が。
ただ、肝心の○○にあてはまる言葉を忘れちゃったんだよね(鬱
構造化だったかな?
0385デフォルトの名無しさん
NGNG0386デフォルトの名無しさん
NGNG「プログラムいた」と言う派?
「プログラムばん」と言う派?
わしゃー、ばん派やね。
0387デフォルトの名無しさん
NGNG0388半分愚痴
NGNGこないだから仕事で引き継いだコードがこれ多用していて見づらいYO!
_foo_bar() と __foo_bar()の違いに2時間気づかんかった・・・。
0389デフォルトの名無しさん
NGNG0390336
NGNG同意。
ネストがかさむとif節の{}のブロックが1画面に収まらなくなりがちだから
余計そうなんだよね。else節が続いたりすると最悪。
>>383
returnの数とメモリリークは関係ない。
それより「全部txt形式のままコンパイル」ってなんだ?
>>384
関数にreturnは1つとかこだわる人って、breakやcontinueは使うのだろうか?
だいたい、longjumpでもしない限りはreturnいくつあっても、関数の出口は
ひとつじゃん。
0391デフォルトの名無しさん
NGNG0392336
NGNGint func()
{
int err;
char *str1,*str2;
if (err = open(file1))
return err;
if (err = open(file2)){
close(file2);
return err;
}
if (!(str1 = read(file1)) || !(str2 = read(file2))) {
closeall();
return FAILED
}
if(err = display(str1, str2))
err_handle(err);
}
closeall();
return err;
}
いままでの流れからすると、332には気にいらないコードだろうけど、
やっぱ自分はこうなるな〜。
0393デフォルトの名無しさん
NGNG_で始まる名前は処理系のために全部予約されてる。
使うべからず。
0394デフォルトの名無しさん
NGNGそう。みんな○○だからな。
0395デフォルトの名無しさん
NGNG字余り。
0396デフォルトの名無しさん
NGNGgoto 使うなって習わなかったけ?
でも>>392よ、
> if (err = open(file2)){
> close(file2);
は、close(file1)の間違いだろ?
こういうことがあるから、error:にまとめるのさ。
「人間の考えたことに絶対は存在しない。
gotoはうまく使えばより良いコードを書ける。
本当に逝ってよしなのはgotoを使いこなせない奴と、
何が何でもgoto使うな!って奴。」
ということで統一して頂けると幸いです。
0399デフォルトの名無しさん
NGNG0400デフォルトの名無しさん
NGNG検索ループと、見つかったとき見つからなかったときのそれぞれの処理、
どう書く?
0401デフォルトの名無しさん
NGNGfor(int i=0;i<10;i++){
if(判定){
見つかったときの処理
return;
}
}
見つからなかったときの処理
0402デフォルトの名無しさん
NGNG}
return i < 10 ? 見つかったときの処理 : 見つからなかったときの処理
0403デフォルトの名無しさん
NGNG// 判定
}
if (i == MAX) {
return NOT_FOUND;
}
//見つかったときの処理
0404デフォルトの名無しさん
NGNG0406デフォルトの名無しさん
NGNG>ほら、バグがすぐ見つかったじゃん。
バグが見つけやすい(バグを出しやすい)ソースより、
バグを出さないようなソースの方が良いと思われ。
0408↑
NGNG■ このスレッドは過去ログ倉庫に格納されています