1 :
デフォルトの名無しさん :
02/09/07 08:41 コーティングに関する宗教戦争はここでやってCray。 ハンガリアン記法とか、goto&多重継承の悪用とか。
2 :
デフォルトの名無しさん :02/09/07 08:43
Ruby vs その他の糞言語
「宗教戦争」という言い方自体が、本物の宗教戦争を知らない人がつけた 不適切な用語だと思いますが。
>>3 不適切な用語かどうか、という宗教論争をやりませう。
5 :
デフォルトの名無しさん :02/09/07 09:03
Rubyh宗教ですが何8か?
宗教戦争ってのはすごいな。神学論争ならまだしも
7 :
デフォルトの名無しさん :02/09/07 09:14
JAVA vs VB.net JAVA vs C# JAVA vs managed C++ JAVA vs *.net JAVAに勝ち目ねーな
8 :
デフォルトの名無しさん :02/09/07 09:15
Ruby >>>>>>>>>>>>>>>>>>>> Java >>>>>>>>>>>>>>>>>>>> VB
も う い い よ
俺的には、もっと大いに盛んにやっちゃてほしい。 そして時間を無駄に使って欲しい。 あわよくば仕事を放棄してほしい。
うんこ
>>10 そ れ が あ な た の 部 下 で も で す か ?
とりあえず二つの言語だけでも、適切に評価できるのだとしたらそれはすごいよ。 俺のところでは、マルチプラットフォーム/マルチ言語環境だから、 リーダーになるためのテストとして使っている。 論争するには敵と味方の欠点/利点を把握しとかないといけないしね。
>>13 部下に論争させて、勝った方が次期リーダーなわけ?
嫌な会社…。
この板では【勝ち】の定義は 最後にスレに書いた方という事のようですが?
16 :
デフォルトの名無しさん :02/09/07 12:52
Rubyの勝ち逃げぇ〜
17 :
デフォルトの名無しさん :02/09/07 12:54
欠点/利点よりも好き嫌い
○○信者必死だな(藁 乱立しない予感
>>19 誤爆?
お前ら!手始めにmainについて議論しませんか?
1. void main()
2. void main(void)
3. int main()
4. int main(void)
5. int main(int argc, char **argv)
俺は5だ。
インデントに4つもスペースを使うなんて 馬鹿としかいいようがないな
そうだね。1つで良いよね。
do_something() doSomething() DoSomething() どれ派? 言語によって無意識に使い分けるのが普通かもしれないが。
>>20 俺は基本的に4。
必要なときにだけ5にしてるよ。
>>20 5. 急いでソース書くときは3. つか, voidなんてコンパイル通るの?
>>21 (setq-default tab-width 4)ですが何か?
>>23 doSomething()だね.
>>23 こんな印象がある。
do_something() ... C/Perl/Ruby
doSomething() .... Java/C++
DoSomething() .... C#
do-something ..... Scheme
indentは2。tabは8。これドグマ。
>>26 C/Perl/Ruby ... do_something()
Lisp/Scheme ... do-something()
Java/Smalltalk ... doSomething()
Delphi/C# ... DoSomething()
C++ ... 混沌
do_something() ... unix doSomething() ... web DoSomething() ... win な感じ
ぶっちゃけ、DoSomething()って見にくい…。
>>20 int main(int argc, char *argv[])
main(){puts("hello,world");}
>>31 int main(int argc, char** argv, char** env)
envつける派か、最近あんまし見掛けなくなったんだよな〜。 1. void main() 2. void main(void) 3. int main() 4. int main(void) 5. int main(int argc, char **argv) 6. int main(int argc, char *argv[]) 7. int main(int argc, char **argv, char **env) 8. int main(int argc, char *argv[], char *env[]) っていうか、gccだとmainをvoidにするとワーニング出るんだけど、何のコンパイラなら通るんだ?
>>36 VCあたりじゃね?
int main() { };
これで警告が出た事あるが。
>>37 釣りじゃないよ。
いやね、ウォーニングってわかってるんだけど癖なのよね。
ワーニングと言うくらいならケイコクと言って欲しいな、 と思う気持ちを大切にしていきたい。
お前ら、ポインタの宣言はどう書きますか? void* ptr; void *ptr; void * ptr;
まだポインタ使ってるの??プ
void * ptr;
const はどっち? 1. const void *ptr; 2. void const *ptr;
const void * ptr; const void * const ptr; void * const ptr;
void* ptr; const void* ptr;
>>36 ポータビリティのあるのは 3,4,5,6。それ以外は実装依存。
>>37 warp をカタカナで書くときは?
>>47 warpとwarningのwarの部分は発音同じはずだから、warpをワープと書くのなら
warningはワーニングの方が正しいね。
49 :
デフォルトの名無しさん :02/09/07 23:13
1. obj.DoSomething() 2. obj.doSomething() 3. obj.do_somethig()
2
タブは4 for文中のセミコロンの次は必ずスペースを空ける for ( ; ; ) オペレータとオペランドの間にも必ずスペース
53 :
デフォルトの名無しさん :02/09/08 00:23
タブコードなんか使うなゴルァ!
>>22 へー、フォントサイズ72ポイントなんだ。
そりゃすごいね。
>>41 発想としては1が正しいようだが
Cの腐れた実装を考えると2
3は見たことないよ。
「小文字は目に優しい」という主張をUNIXのこーディ暈gくそくで、mかけたくsfっすつ。
お前ら, 無限ループはどう書くよ. for (;;) と書く奴がいるんだけど, while (true) の方が正しい使いかたがするんだけど, そこんとこどうなんだYO!!
for ( ; ; ) // 早く止めてくれー(泣
>>57 loop:
goto loop;
の方が正しい使いかたがするんだけど。
>>57 正しい使い方かどうかは知らんが、俺もwhile派だな。
>>58 ガイシュツだけど、
int T_T
while (T_T) {
/* statements */
}
とかね。
>>59 引退しる!!
#define forever while(true) かな?
#define ever (;;) for ever {} でしょ
63 :
デフォルトの名無しさん :02/09/08 05:22
NULLはヌルです。 ナルではありません。 同様に Warning もワーニングでウォーニングではありません。
>>62 どうせなら
#define ever (;;)
#define my {
#define love }
for ever my love
65 :
デフォルトの名無しさん :02/09/08 05:31
スマートポインタを知らないC++屋さんは糞以下、氏ね。
スマートポインタ 1.自作 2.STL(注意して使え) 3.boost::shared_ptr 4.他
中と厨房のチュウの部分は発音同じはずだから、チュウを中と書くのなら チュウボウは中房の方が正しいね。
heart warming=ハートワーミング
発音にこだわる奴って職場でもそうなの? どっち派でも良いんだけどさ。
false=フェイルス
query=クウィアリー
嘘を嘘と以下略
お前らなー。 カタカナじゃあ表しきれない発音があんべさ。 warningの発音は俺的に ウォーニング----------|----------ワーニング ↑ この辺だと思う。 だからウォーニングもワーニングもそのままカタカナ読みしたらどっちも変。 結論 ウォェァォーニング
ウォアニング
>>75 微妙に違うな
ウァィゥェォーニング
だ。
ウォョァニング
マジレスだが やっぱり出だしの一瞬は「ウォ」だと思う。 その後「ア」やら「エ」やらが混ざってる感じ。 分かってるんだったらスマン。
マジレスだが やっぱり出だしの一瞬は「ワ」だと思う。 その後「ポ」やら「プ」やらが混ざってる感じ。 分かってないんだったら逝ってよし。
null=ヌル warning=ヴァルニング
口を星形にするような感じで
>□の形が重要なんだよ □=愛
ごめん。やっぱ俺笑いのセンスないや。
>>84 が遥か雲の上に見える…。
>□の形が重要なんだよ □=△
すげー宗教戦争だな。
どっちでもいいから統一してくれ
>>63 ,82
book shelf見たらNULLの発音記号はナルだった
nullの発音記号って[n∧l]だからナルの方が近くないか?
いつも思うんだけど、何でカタカナでの発音にこだわるんだろう。 ネイティブ基準にするなら、近いものでなくて、全く同じ発音にすればいいのに。 職場でも。
null は エヌユーエルエル とす。
nullをあえてニュルと読んでみるテスト
ぐぐってみますた。 ヌルポインタ 457件 ナルポインタ 19件 圧勝! ウォーニング 8630件 ワーニング 7560件 むぅ・・・互角か。
ヴォークト読んでれば知っている。 「非Aの世界」「非Aの傀儡」の「非」のフリ仮名が「ナル」だということを。
NULLをナルと呼ぶ人はナルシストです。
null=エニューエウエウ
おまえらいい加減
>>1 のネタフリに突っ込んでやれよ。
コーティングつったらやっぱQMIテフロンコートだろ。
103 :
デフォルトの名無しさん :02/09/09 06:14
{ ... } よりも begin ... end の方がCOOL!
カッコ類の入力が面倒なので、 {},() はすべて [] で置き換えた C があるといいなぁ。 perl は意味が変わるから、一部だけ? main[int argc, char**argv][ for[;argc--;] printf["%s",argv[argc]]; ]
ちょい前までの大型機では [ ] が表示されなかったので [ ... (| ] ... |) で代用してたな。
鳥グラフじゃなくて?
>>107 懐かしいね(藁)。入門書読んだ時以来、久しぶりに聞いたよ。
>>106 はネタっしょ、いくらなんでも。
>>105 せめて()にしてください…見にくいっす…。
# そんな俺はLISPer♪
Σ(゚д゚lll)ガーン ネタニサレタ・・・IBM3090トカハ、ソーダッタヨ
>>106 あぁ…スマソ。(|か…しかし何でまたそんな組合せに…。トリグラフよりは短くて直観的だから使いやすいけど。
trigraph=トライグラフ
トリグラフ C言語 → 15件 トライグラフ C言語 → 25件 ………ガ━━(゚Д゚;)━━ソ! # ずっと間違えて覚えてたのか…でも昔買った入門書にはトリグラフって…(´・ω・`)ショボーン # 単に両方使うだけなんだろうか.
>>108 もれもlisp使うので、同じことがCでもできないのかと考えた。
lispの場合は[]を入れると自動的に()にするelispを使ってる。
Cでも、forや配列を判別し、カッコを自動的に(),{},[]に変換してくれる、
そんなelispをガリガリ記述してみようかしらん。
まあ好きなかっこを使うのは勝手だが、 自分しか触らないプロジェクト内だけにとどめておけよ。
2ちゃんだて意外とflameにならないんだね
>>112 おちけつ。ラテン読みと英語読みの違いだろ
>>115 わざわざ flame専用スレに書く香具師がいないだけであって。。
何か宗教戦争無い?
flame用の隔離スレを立てておくと害虫はそっちに逝ってくれるので便利
122 :
デフォルトの名無しさん :02/09/11 04:33
彡≡≡≡≡|≡ミミヾ / \ _-=─=- / ` //-=─=ヽ  ̄ ̄ ̄ ̄ ̄ ̄\ミiiiiiヽ \ _-=≡///:: ;; ''ヽ丶/ヾ ヾ .,! !,,!_´,,//_/ /=″″ヾヾゞ″ヽ \iiiiiiiゞ ─ | / '' ~ ヾ/=/`''~~ /彡 ノ 》 ヽ \iiヽ ── | / |=.| 二 ..| ヽ ━━━'/ ヽ━━━ ヽミヽ _,-=- _,-= ヽ| | ヽ| ── / 《 i __,.:: :: __ ヽiiiii ノ_ ヽ |≡ , 、 || ヽ ,, 、ー ̄ ∠;ヾ ∠;ミ;ミミ ヾ ,j ::: |iiiii ヽ .|≡_≡=-、___, - -=≡=_ / / \ ( ノ)-( \__) \ヽ ,=ヽ |iii| ( о ) | || ,ー● | | ●ー |┤ ./ | / ii ( ● ● ) .|iiii| /_,,,,;;iiiiiiii;;;,,_ヽ |ヽ二_,( )\_二/ | ( 。つ\ |./ ヽ ; ≒/б,リ 》━━━━《 |iiiii|///;;;;───、ヾ. | /( )ヽ | / 丶 ( __ j \ ヾ , 彳 》 / ̄ ̄\ 《 |iiiiiiii|:::///\__/ヾヽ| / ⌒`´⌒ | /____」 ,/,,ii,,,ミ;; ; / i 《《 \ ̄ ̄/ 》》 |iiiiiiiiiii|::// ;; ; ;; 》::::::| / | |/ / レ;こノ ij\ \\ / ,i 》》  ̄ ̄ 《《 》》》》》iiiii|::《 ;; ;; ;》 ;;》:( |_/ヽ_'\_/ | | |__/ ヽ┯' ij \ | \ 《《《《《《《《《》》》》》》》》》》》》》》iii|/ 》 ;;》 》 ;;ミ ヽ 、\_ ̄  ̄/ヽ ヽ -─ ヽiL._ __、_,/
123 :
デフォルトの名無しさん :02/09/11 04:35
日本を代表する宗教関係者がこのスレに興味をもちました
左から、rms、stroustrup,,,じゃないのか。
三番目が池田先生で四番目が足裏診断だよね。 右端は誰?
128 :
デフォルトの名無しさん :02/09/11 12:36
>>126 は池田先生といってるところをみると学会員です。
危険人物です。
普段から金正日「将軍様」、金日成「首領様」と呼んでいますが、何か?
130 :
デフォルトの名無しさん :02/09/12 03:21
キンマンコ!!
プログラミング界の教祖や伝道師をヲチするスレってのはマ板にあるかな
昔CQ出版の原稿書いてた人が 原著よんで日本ではヌルというが 本当はナルと言うんだと豪語していた記憶があるが 俺はヌルで炒ってるとりあえず
アニメ塗りマンセーなら塗るしかないヌル。ヌルヌル。
誰?
nullなりnilなり好きにしろ。
136 :
デフォルトの名無しさん :02/10/23 22:47
JAVAが最強だな
137 :
デフォルトの名無しさん :02/10/23 22:53
「憂鬱な〜」はRubyに触れていないから糞
Rubyに触ったら糞
Rubyは糞
140 :
デフォルトの名無しさん :02/10/23 23:03
emacs vs vi のスレはここですか?
emacsの勝ちでお願いします。
143 :
デフォルトの名無しさん :02/10/23 23:09
やっぱ、 { } でしょ? { } って(プププ
やはり「end」は糞
147 :
デフォルトの名無しさん :02/10/23 23:46
Ada...Do_Something() 個人的には、Adaは最悪。 識別子をすべて大文字で始めなきゃいけないので小指がつりそうになった。
>>36 普段 3. int main()
必要があれば 6. int main(int argc, char *argv[])
int main(void) は馬鹿らしい
int i; を auto int i; と書いているようなもの
(void) printf("Hello, world\n") はもっと馬鹿らしい
envp は、環境変数を操作する必要なんて普通発生しないし使ったこと無い
getenv() で十分
>>38 それは最後のセミコロンで警告どころかエラーになる
>>41 void *ptr;
>>44 const void *ptr;
ただし
char const * const str;
>>60 #define _
for(;_;)
>>66 3. boost::shared_ptr に最近したところ
>>103 { ... } よりも begin ... end の方が FOOL!
>>143 同意
150 :
デフォルトの名無しさん :02/10/24 08:24
スタイルに関してだけ言えばpython最強でみな激しく同意?
>>149 なんねーな。
それよりも return がない事で警告が出る。
152 :
デフォルトの名無しさん :02/10/24 22:36
>> 147 大文字・小文字を区別しないFortranが良い
156 :
デフォルトの名無しさん :02/10/27 17:25
唐揚げ はにゃ〜ん
今気付いたんですけど ひょっとして糞スレですか?
158 :
デフォルトの名無しさん :02/10/27 18:30
アニメ塗りマンセーなら塗るしかないヌル。ヌルヌル。
>147 Ada は大文字/小文字の区別しないでしょ。
ADO
162 :
デフォルトの名無しさん :02/11/05 21:52
Adobe
>>163 ,. -───-: 、
/::::::::::::::::::::::::::::::::\
/ '':::::::::::::::::::::::::::::::''''' ヽ
!::::::::::ィ::ハ:::;::::::::::::::::::::::::::!
i::|:::i::/l/ i;::ト、:、:::i:::::::::::::::i
|::i/レ'-i'' 'ヽi-ヾ,ヽ!:::::::::::::l
|::ハ -‐- -─- i::::::::::::::l
|::::::l| | | | |::::::::::::::!
|::::::ヽ | r---、! l,.!::::::::::::::l
l::::::::::::`;'-'=,‐,='r''i~!:::::::::::::::|
!:::::::l、::r'"´'. ' l ' i::::::::iヽ:::l
i:l、:::|./、_____,l::::;l:/‐'ヽ!
'!ヽ;i'>l____,.//-‐'''"ヽ
!/ |.VVVVVVVV.lV\!. i
| | | l
有名な精神的ブラクラ、ですな。見たこと無いけど。 つか、張るなよ。
Delphi 以外は糞!!
>>163 C爺はスレッドの分別もつけられねえのかヴォケが
じゃなくてなんで俺がその画像を既に持っているかが謎だ。
グロ画像サイトで落としたんだっけか・・・
167 が、自分がアフォである事を独白しますた。
Unicode
170 :
デフォルトの名無しさん :02/12/02 00:49
ありふれたネタだけど、お前らインデントとカッコどうやってますか? 俺は if ( a == b ) { for(;;) { } } というK&Rスタイル。 これ以外のソースが書いてあると条件反射的に修正してしまう。 特に if (a==b){ の場合、 if (a==b) { と空白を強制的につけて嫌がられてます。
>>170 俺もほとんど一緒だがifのあとに空白があると気持ち悪い
if(a == b) {
Pascal風
>>57 while(true)だと評価が入るので、for(;;)のほうが速いらしい。
先日、組み込み屋さんがどこかのMLで書いていた。
>>147 Pascal, Delphi, C#,,etc
はすべて最悪、と。
Ctrlは左下にある、と。
if( a == b ) { for(;;) { } } ですが何か?
if(a == b) { for(; ; ) { } }
sage
関数名の後は空白なし。 if や while の後は空白あり。 開くブレーズは改行せずに () に続けて。 int main(int argc, char * argv[]){ if (a == b) { for (;;) { } } return 0; }
int *pi; /* C */ int* pi; /* C++ */ と単純に分けて使っているのは正しいですか?
>>180 それ、どんな意味があるの?
C++ は知らないんでマジレスしてくれると嬉しい。
>>179 トリップ間違えてるよー。
そいつ俺だよー。
int *p1, p2; /* C */ int* p1, p2; /* C++ */ (´-`) ??
>>182 それがあるからちょっと躊躇うんだけど
おれはね、int型のポインタとintとは全く
別物だと思うから同じところで宣言したりは
しないようにしてる。
実体、ポインタ、参照。これらが仮にメモリ上の
全く同じものをさすこちになるとしても、
やっぱりおれの中の意味的にはまったく別物。
それらを同じような場所で宣言するとしても
やっぱり三つに分けてる。
int i;
int* p_i;
int& ref_i=*p_i;
ダサイって言われるんだろうなあ(変数名は便宜的なものね)。
もっと綺麗な解釈と書き方を教えてください。
//int i=3,*pi=&i,&refi=*pi; //こういう風には書かないってことです。 int i=3; int* pi=&i; int& refi=*pi; やっぱりダサイですかねえ。
>>183 そういう話じゃない。
int* p1, p2; と書いた時、「int* 型の変数 p1, p2」 に見えないかという
事。
それと、ポインタ型を 2 つ以上続けて宣言する場合、
int* p1, *p2;
不恰好だと思わないの?
あと、182 の前者の何が C で、後者の何が C++ なんだ?
どちらも C であり C++ だろう。
意味を取り違えてました。 >int* p1, *p2; >不恰好だと思わないの? 同じ型のポインタを二つ宣言するときは、 int *p, *p2; と書きます。 それ以外のときは型名に*や&をくっつけてると思います。 >182 の前者の何が C で、後者の何が C++ なんだ? これは自分のコーディングスタイルです。 gccユーザーなので両者はサフィックスに従い はっきりと分けてます。
>>186 > 同じ型のポインタを二つ宣言するときは、
> int *p, *p2;
> と書きます。
int* p;
int *p1, *p2;
統一性無いと思わないの?
> それ以外のときは型名に*や&をくっつけてると思います。
思いますって・・・
> これは自分のコーディングスタイルです。
根拠は特に無いという事?
それなら、「182 の前者の何が C で、後者の何が C++」 の説明にはならない。
> gccユーザーなので両者はサフィックスに従い
> はっきりと分けてます。
使うコンパイラによりスタイルを変えるという事?
何か意味あるの?
あと、「サフィックスに従い」 の意味がわからない。
>>187 >> これは自分のコーディングスタイルです。
>根拠は特に無いという事?
ありません。それではあなたには何か根拠があるんでしょうか?
私のやり方に統一性がないとおっしゃるなら具体的に根拠を述べて
みてはどうですか?
ちなみに私は同じ型の変数でも別途一行設けて宣言することの方が
多いです。これはコメントを書きやすくするためでもあります。
あと182は私ではないですし、そこに書かれている書き方は
私もしていません。
>使うコンパイラによりスタイルを変えるという事?
>何か意味あるの?
>あと、「サフィックスに従い」 の意味がわからない。
要はあるファイルをCのものC++のものと分けているということです。
拡張子が.ccやcppのファイルからはなるべくC風の書き方(根拠のない
自分流のものではありますが)をしないようにしています。
コンパイラ云々は関係ありません。
>>179 昔はそう書いてたけど、一度viを使ってからは関数頭の開きブレースだけは行
を分けるようになった。
>>188 > ちなみに私は同じ型の変数でも別途一行設けて宣言することの方が
> 多いです。これはコメントを書きやすくするためでもあります。
これはいいんじゃない?
漏れはまとめて書く派だけど、分けて書いてる人は多いと思うよ。
「int 型と int * 型が別の型」 というのは立派な根拠だ。
> あと182は私ではないですし、そこに書かれている書き方は
> 私もしていません。
あれ 182 じゃなくて 180 の間違いだ。謝罪。
ともあれ、「180 の前者の何が C で、後者の何が C++」 根拠が呈示されない
と、どうして int *pi; を C 風として、int* pi; を C++ 風として扱う事に
したのかわからないと、その使い分けが正しいのか判断できないから、180 の
質問には誰も答えられない。
> 要はあるファイルをCのものC++のものと分けているということです。
そういう事なら 「ファイル名のサフィックス」 と書いた方が通じやすいと思う。
> 拡張子が.ccやcppのファイルからはなるべくC風の書き方(根拠のない
> 自分流のものではありますが)をしないようにしています。
これは絶対という事はないけど、そんな事する意味は無いと漏れは思うよ。
というか、訊きたいんだけど、それによってどんな意味を持たせたいの?
ソース見ただけで C か C++ か判断とたいというにしても、C++ ソースなら
C と非互換のヘッダーやキーワードや構文を使ってて C コンパイラじゃエラーに
なると思うし、C 互換機能しか使っていないなら、それこそ C++ 風で書く意味が
無いよ。
>>190 >「180 の前者の何が C で、後者の何が C++」 根拠が呈示されない
根拠を示せと言われても理論的な考えなどは実は何もないのですが、
今まで読んできた多くのGPLライセンスのソースがそうなっていた
ということだけが根拠となるのでしょうか。それでいてコーディング
規約などは読んだことがないというヘタレなので間違っているかもしれません。
Cに関して読んだものはLinux、gcc、binutils等です。BSDLのCコードも
基本的には今回のケースに限っていえば同じだと思っています。
C++はgccに含まれているSTLを参考にしています。
マイクロソフトのsscliやboostなどは両側に空白が入るものも含めた
3種類が割と適当に使われていました。
少し考えてみたのですが、
型名 {,*,&} 変数名
という書き方が出てくるのは思いつく限りでは
1. 変数宣言
2. 関数定義
3. typedef
の3通りあるわけですが、
2の関数宣言に関しては、一つ一つのパラメータに対して
型を指定する必要があるのでこれはいいとして、
1,3に関しては個人的には構文として疑問です。
Cに関しての詳細には疎いので当然間違っているとは思います。
その上での話になりますが、
typedef int* pint, inttmp;
のような書き方の場合にはint2はint型になるわけですが、これは
直感的にはおかしくないでしょうか?
個人的には
typedef int* (pint1,pint2); /*構文は間違っています*/
のように解釈されて欲しいわけです。
歴史的にどうして現状のようなものに至ったのか知りたいところでは
あります。
typedefのことが外れてしまうので、 型名 {,*,&} シンボル名 に訂正します。
>>191 > 根拠を示せと言われても理論的な考えなどは実は何もないのですが、
じゃあ申し訳無いけど 180 が正しいかどうかは判断してあげられない。
あえて回答するなら 「意味不明」。
> 今まで読んできた多くのGPLライセンスのソースがそうなっていた
GPL なソースの場合、
・ 1 本のソースが必ずしも 1 人で作られているとは限らない
・ 複数人による場合それぞれのスタイルが統一されているとは限らない
という点は留意した方がいい。
先人のした事を鵜呑みにするより、自分なりの理由付けをした方が、
自信を持てるスタイルを確立しやすいと思うよ。
> 1,3に関しては個人的には構文として疑問です。
漏れも、ポインタや配列の定義文については疑問だ。
char[16] へのポインタを返す関数なんか char *func(void)[16] だしな。
まあ、そんなコードにする前に typedef すればいいけど、構文解析する
上ではこの文法が簡潔になるようだ。
> typedef int* pint, inttmp;
> のような書き方の場合にはint2はint型になるわけですが、これは
> 直感的にはおかしくないでしょうか?
これも構文解釈を簡潔にするための都合で、歴史はあまり関係無い。
C/C++ 規格上では、typedef は宣言の extern とか auto とか static や
なんかと全く一緒の扱いなんだよ。
typedef をそのまま extern やらに置き換えても意味は通じるだろう。
書き忘れ。 > 1. 変数宣言 > 2. 関数定義 > 3. typedef この 3 つは、規格では 「宣言文」 として、全く同一に扱われてる。 だから、区別する意味は無い。
>char[16] へのポインタを返す関数なんか char *func(void)[16] >C/C++ 規格上では、typedef は宣言の extern とか auto とか static や >なんかと全く一緒の扱い >この 3 つは、規格では 「宣言文」 として、全く同一に扱われてる んー、いろいろと勉強になります。 数人しか見ていないであろうこのスレにおいてのマジレス感謝です。 Cの構文ではあと、関数ポインタの宣言もなんだかおかしい気がしてますが どうでしょうか? typedef void(*)(void) funcptr; void(*)(void) funcptr = &func; こういった形の方がよかったような・・・ただしこれだと何か問題があったのかも しれないし、現在の形の方が自然に理解できるという解釈もあるかも しれません。 もっと両言語について勉強して出直してきます。ありがとうございました。
>>189 >一度viを使ってからは関数頭の開きブレースだけは行を分けるように
vi 使ったことないからわからないんだけど他のエディタではどうですか?
vi じゃなきゃ行を分ける意味はないかな?
>>193 >
>>191 > > 根拠を示せと言われても理論的な考えなどは実は何もないのですが、
>
> じゃあ申し訳無いけど 180 が正しいかどうかは判断してあげられない。
> あえて回答するなら 「意味不明」。
正しいかどうかよりも、ただの慣習。
int *p; /* K&Rはこう書いてあった */
int* p; /* ARMはこう書いてあった */
好きなようにすればヨロシ。
>>196 viだと[[と]]で先頭の開きブレースにとぶんだよ。
つまり、関数の頭で行を分けとけば関数単位での移動が簡単なわけ。
あとは、K&Rスタイルで書くときは普通分けるね。
>>198 じゃあ他のエディタでは機能的には分ける意味はないのね。
慣れの問題だろうけど { を分けるのはどうも気持ち悪いのよ。
でも人がやってるとマネしてみたくなったりw
200
201 :
デフォルトの名無しさん :02/12/31 14:43
201
とりあえずcaseはインデントしないでほしい。
とりあえず case はインデントしる。 default もな。
遅レススマソ
>>199 いや、EmacsでもC-M-aは同じように関数の頭を先頭の開きブレースで探すから。
> あとは、K&Rスタイルで書くときは普通分けるね。
実はこっちも結構大きい。
>>202-204 caseは他の半分のインデントにしとる。
if (foo()) {
bar();
}
switch (hoge()) {
case 0:
hage();
break;
case 1:
voke();
break;
}
半分になっとらんが、そういう事にしといてやろう
>>206 bar();の頭を半分全角空白に置換し損ねた。
漏れは半分と言わずに、普通に Tab 1 つでインデントするけどな。 今時、横幅 80 桁でソース眺める香具師が居るのか?
最近気付いたんだが 横より縦の長さが重要だな 1024x768じゃ辛い
早く1792×1344にしなさい
>>208 インデント8桁はちょっと深いな。
linux-styleはそうだけど。
8 桁とは言っていない。 Tab 1 つと言った。 なお、Tab 幅は 4。
>>212 変則的なTab幅を使われると見るとき困るんだよな。
Tab 幅 4 が変則とは気付かなかった。
スペースでタブ幅2のPascal使いですが何か?
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/ 1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27 鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
つーか、Tab 幅に依存するような使い方なんかしないぞ。 Tab 文字は行頭のみが基本だろ。 桁揃えは、基準となる行と同じだけ Tab を使って、後はスペースで整形すべし。
wが何かのビームに見えるのは私だけ?
ちゅうかさ 「ここは2chだ(゚Д゚)ゴルァ! 2chの決めた手続に従って 2chの決めて基準を満たさん限り 削除なんてしないもんねウヘヘ 」 ていう削除姿勢が問題だったんでわ 削除に関する方針癲癇はないのだすか
管理人をやれるのは徳山しかいないだろう。
>>194 俺の場合本文に書かれた文字列だった。
x-bear.comって書いただけだったけどtomato発動。
======2==C==H======================================================
2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 138720人 発行日:2003/1/9
年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。
そんなわけで、年末に予告したIP記録ですが実験を開始しています。
「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ────────────────────────────
>>473 貴方の仰ることもよくわかりますが、いまの2ちゃんねるが
その役割を果たせているとは到底思えません。
あまりにも低レベルすぎて、お話になりません。
いつの日かまともな議論できるような掲示板になるよう
心から願っている次第です。
これからは、心を入れ替えて良い子にします。 よろしくお願いします。
明け方は逢魔時
いやぁ、いろんな人から電話かかってきておもしろかった。 んじゃおやすみなさい(3回目)
>>808 知ってるよ、今はただでさえヤヴァィのに
十数人の小学生をばたばた殺したら相当ヤヴァィだろ、と思った訳です
うーん、ちょっと軽率発言でしたね、すみません
うざ
2ちゃんねる内部関係者の顔がみたい。
△ ウィー ヒック (( ⌒●⌒ へ◇ )) > おでんマン、デロンデロン △ オ゛ゥエー ¬● /) (( おでんマン、リバース中
びつくりしますた。
大阪って何?(´・ω・`)
>>312 キタ━━━━━(゚∀゚)━━━━━!!!!
IP記録しようがしまいがしったこっちゃねえ! 俺は言う! 俺 は 無 職 で 童 貞 だ
次スレ立てるときは のソース貼り付けおながい。
あ、そうだIP記録してんなら削除三板のリモホ表示やめれ
思ってる事をそのまま言ってしまうと行為=無責任発言 ということ。 正当性がある意見なら、実社会でも言える。 内部告発なんかも、実社会でも十分可能。
自由って一体なんだーい♪
======2==C==H======================================================
2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 139038人 発行日:2003/1/10
なにやら、連日メルマガだしてるひろゆきです。
そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。
重くなって落ちたりしてもご愛嬌ってことで。。。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ────────────────────────────
自作自演。
噂はいろいろありますが、すべてガセです。
2ちゃんねるのオランダ引越しまだぁ〜
それが普通だろ
全書き込みIPアドレスを表示しましょう。 そうすれば 無 責 任 な発言は減りますよ。
ひとりキャップ 関係ない 正解
IT ITって大騒ぎ 多分9割は楽しんで騒いでいる
やったね━━━━(゚∀゚)━━━━IPマンセー
期待してたのですか? あなたもカスですね。 是非氏んでください。
もちろん読んでいる。 判決理由中、プロバイダー責任法についての論及は典型的な「なお書き」であり、 「本件に直ちに適用されるものではない」としながらも「その趣旨は十分に尊重すべき」 といってその具体的条文について解釈し、さらに条文の要件に該当するか否かを直接に 判断しているのは、全く不要なことあるいは方法において妥当でないものです。 「趣旨」について判定するのであれば、法の立法事実や一般的社会的情勢を論じ 一般不法行為法あるいは一般条項の解釈中において論ずるべきです。 適用されない法律をあの形で検討するのは、正当性を全く高めません。 前半については、絶対的上告理由にならず、上告受理理由にもならないからです。 それに、先例拘束性がない我が法上、このような理由中の問題点を破棄する必要もありません。 後半については、この裁判例がそのような方向に一般的に敷衍されるとすれば、 確かに問題だと私も思います。ただ、そこまでする気はまだ無いだろうと。
それマジレスのつもり? ボランティアだから無責任でイイ? 笑わすな、じゃあ世間のボランティアは無責任でいいのか そんなの社会で認められてないね もちっと勉強して出なおして来いや
その通りっす でも3〜4ヶ月に1回なのね、覚えときます
(^^)
ひろゆこも大変やナ。 コミケから被害届けも出されるし…
(^^)
260 :
デフォルトの名無しさん :03/01/20 05:32
Tab 幅は 4!! Tab 幅は 4!!
Tab 幅はぬるぽ!! Tab 幅はぬるぽ!!
262 :
デフォルトの名無しさん :03/01/20 08:10
タブ幅は2に貴抹点だろ。
(^^)
using namespace 戦争勃発 age
おまいら、using namespaceをデフォで使いますか?
std に対してだけは。
俺もタブ幅2だな 別に2以上なら見やすさはどれだって同じなんだし、 だったらコードにウィンドウの幅いっぱい使いたいじゃん?
2だと狭いし4だと広すぎるからタブは3!! またスペースに変換して問題なければ必ず変換して保存する!!
>>267 使う。
使わない理由を聞かせてもらおうか。 ↓
namespace使ってないプログラムに使うとエラーの出る 可能性があるじゃん。
#include <iostream> namespace hoge{ int main(){ std::cout << "(゚∀゚)アヒャ!!" << std::endl; } } using namespace hoge;
>>273 (・∀・)イイ!!これがすべての答えになりそう。
ハンガリー記法がハンガリアン記法ならば ニュートン力学はニュートニアン力学とすべし
ニュートニーズ
>>272 名前空間でincludeすればいいじゃん。
>>272-273 向こうに書いたやつの転載。
書こうと思えば書けるが、標準で使われてしまっている名前はなるべく避けるのが
常識じゃないか?
とすれば、名前の衝突はそうそう発生しない。
そもそも、名前空間 std って何のためにあるんだ?
グローバル名前空間でvectorとかlistとかいう名前を使ってる 昔のプログラムがそのまま使える。
>>281 ああ、同じ名前がstd::プリフィックスがついているかいないかで意味が
変わるのが読みにくいって事?
そういう事は滅多に無いし、std::がついているからと言って読みにくく
なるという事は絶対にないと思う。
>>281 漏れは C のライブラリに慣れちゃってるから、std:: が鬱陶しいんだよな。
つーか、C のライブラリのスタイルで何か問題があったのか?
それが標準関数である事は、見ればすぐわかる。
boost のような外部ライブラリが名前空間を使うのは納得いく。
ライブラリに名前空間があるのは普通だと思うが。 それが標準であっても。
何か、微妙に別の宗教戦争になりそうだな。
ハンガリアンって大阪のアレだろ?
287 :
デフォルトの名無しさん :03/01/31 21:58
文法を変更するマクロの是非について 例) #define unless(b) if(!(b)) #define until(b) while(!(b)) #define elseif else if #define elsif else if #define NO_MORE_CASES break; default: assert(0) #define LOOP(i, a, b) for((i) = (a); (i) < (b); ++(i)) #define LOOP_ENUM(i, name) for((i) = name##_FIRST; (i) <= name##_LAST; ++(i)) #define IF_DUMMY if(0) #define ifnull(b) if((b) == NULL)
elseif 以外は全部許せんな。 人によっては elseif も NG だろう。 あと、unless 作ってるのに ifnull を用意する必要があるのか?
戦争(・A ・)イクナイ!
>>289 理由を述べよ。;y=ー( ゚д゚)・∵. ターン
291 :
デフォルトの名無しさん :03/02/09 02:41
gets,strcpyの是非についてはこちらでどうぞage
gets はバッファサイズ指定できないのでキモイ。 fgets 使うべし。 strcpy もそうだけど、 文字列が途中で切れないようにバッファサイズを確保して コピーすることが多いような気もするのでその場合は問題なし。
#define gets(buf) fgets(buf, sizeof(buf), stdin) こんなところで
char *buf = malloc(1);
buf = relloc(256); // ぬるぽ?
HWND hwnd = static_cast<HWND>(new char[true]);
ないしょ♥
標準のauto_ptrが参照カウントではなく所有権譲渡方式なのは 何か理由があってのことですか? 見たところATL/WTLの多くのハンドルクラスも参照カウントではなく 所有権譲渡方式で実装されてるみたいだけど。。。 実装が簡便で軽くなるのは分かるけれども、制限が多いので boost::shared_ptrのようなものを使う人も多い訳ですよね。
istream& std::getline(istream&, string&, char) でOK
304 :
デフォルトの名無しさん :
03/02/15 04:47