1 :
ジョセフ ◆.VUCb/gSgo :
02/10/24 15:59 このCは約30年前に作られた低レベルな処理しかできない手続き言語である。 言語仕様自体に入出力は無く、関数呼び出しで呼び出し側の変数を操作するにはなんとポインタしか手段が無いのである。 当然オブジェクト指向なんて考えて作られているわけがない。 文字列もポインタを使ってのアクセスだしmalloc/freeでのメモリリークの心配もある・・・これで高級言語?信じられるだろうか。 その上、標準ライブラリはとても貧弱でGUIやネットワークが普通に使われるこのご時世にはとても不適当である。 こんなんじゃまともなプログラムなんて作れるわけがない。 現在はJavaやC#、Delphiなど魅力的な言語は多数ある。 これからプログラミングを始めたいという方はそちらをお勧めする。
(゚Д゚)ハァ??
適材適所で使えと。 だいたい今時、ひとつの言語にしがみついてる奴も珍しいだろ。 つうことで終了。
>>1 > これで高級言語?
Cは高級言語であるかどうかが現在でも疑問視されてます。
×:こんなんじゃまともなプログラムなんて作れるわけがない。
○:こんなんじゃまともなGUIプログラムなんて作れるわけがない。
他は同意
6 :
デフォルトの名無しさん :02/10/24 16:05
それがどうしたどらえもん
ま た C の 糞 ス レ か
10 :
デフォルトの名無しさん :02/10/24 16:10
そうね。今から始めるのならJavaあたりのほうがいいと思うね。 ごく当然な話だし、だからどうしたのという感じだが。
>>1 >malloc/freeでのメモリリークの心配もある・・・これで高級言語?信じられるだろうか。
>現在はJavaやC#、Delphiなど魅力的な言語は多数ある。
Delphiだって、freeしなきゃメモリリークするじゃん。
13 :
デフォルトの名無しさん :02/10/24 16:12
>>1 激しく同意!!
Cゲンガーなんてもういらねえんだよボケ!
あれぐらいの型付けができれば十分高級言語と呼べると思います。
いい加減に糞スレ立てるのやめようべ
>>4 C言語を使う理由が無いのに無理して使うんですか?
>>17 C言語でやったほうがいいのに無理してPascal使うことも無いだろ。
今時、GUIアプリ組むのにCなんて使う奴は居ません。 最低でもC++です。
単なる死滅スレか・・・なつかしいね
23 :
デフォルトの名無しさん :02/10/24 16:19
Cでやったらどういいの? 適当・不適当の判断基準もわからないのに適材適所?(w
>>23 そりゃ、判断基準もわからないようなあんたが悪い(w
い い 加 減 に 糞 ス レ 立 て る の や め よ う べ
C言語ってやっぱり嫌われてるんだぁ 早めにC++に移って良かった〜
27 :
デフォルトの名無しさん :02/10/24 16:28
>>1 確かに同意だけど、そのひ弱で低水準さ役に立つことがある。
組み込み系ならまだ使えるさ。
なんでUNIXの開発はCなのでしょうか?今ではC++も立派に 使われているのに、なぜかこの会社の連中は有無を言わせず、 Cを使い出します。自社製のライブラリなんて別にC++からでも 使えるのにそれをいっても「C++はまだ処理系が枯れてないからさ〜」 とか抜かします。そりゃいろいろとまだ問題があるのは事実ですが、 それを分かった上で使うには問題ないと思うのです。
ム板けっこう人いるじゃん。
>>30 その会社の問題であってUnixの問題ではない。
>>30 > 自社製のライブラリなんて別にC++からでも使えるのに
拡張子を.ccにしたCソースができるだけだと思うが。
>>30 あんたの会社の連中が C++ を使いこなせないから。
あんたは C 以上(並)に使いこなせてる?
>>32 いろんなライブラリがCで用意されてるからC++を使う利点がないと
いうのはあると思う。
>>30 C親父は洗脳されてるよね。
新しい技術とか覚えるの辛いならさっさと辞めろっていいたい。
もしかしてCのライブラリってfunctionだけとか?
>>36 部下のデキによる。
知ったかしてスパゲッティ作られたら終り。
いつ止めるかわかんねーしな...
>>32 UNIXの問題とは一言もいっていません。
アプリ屋としての頭の固さのことを言っています。
C++の難しさとして、Cのように手軽にライブラリとして
ノウハウを溜めにくいという点には同意します。
ただしそれは長い目で見たら取り組んで行く方が
よいと思うのですがどうでしょうか?
私にはこの点を力強く説得するほどの能力はありません。
会社の愚痴ならマ板逝けよ。
>>40 あんたがダブルヘッダーで C、C++ の両方の
ライブラリ作ればよろし。
がんがれ、若増! 応援するぞ。
>>40 取り組むんならC++はやめとけ。ヘタするとCよりも早く無くなるかもしれん。
#ifndef __cplusplus #error いい加減C++くらい使えるようになれよ。糞Cジジイ共 #endif
おっ、もうすぐ定時だ!
>>40 C++ でライブラリ作っとけよ、先帰るから!!
おつかれ〜。
46 :
デフォルトの名無しさん :02/10/24 16:58
良スレあげ。
trip test
>>1 死滅スレにはスレタイにちゃんと【死滅】って入れとけよ
continue
もう糞Cスレ立てんなよ。
Java厨のおでましだ〜
52 :
Java厨 ◆l.nT/qC3Ro :02/10/24 17:08
バックスラッシュが一番だな。
abstract
>>1 Delphiはメモリリークの心配があるので捨てろ。
なんで今更言語ごときでぐだぐだ言ってんだよ・・・。
.NETがでたからどんな言語でもいいだろ。
.NETにのらない言語は糞で故にC言語も糞なわけだが。
CがCOBOL以下だって?
59 :
デフォルトの名無しさん :02/10/24 22:36
GTKってCじゃなかったっけ?
手続型言語と関数型言語と他に何か有りましたっけ?〜型言語
論理型
thx.
forthはスタック型っていわなかったっけ。
C なんてキソだろキソ。
ApacheもqmailもCだにゃー。 ヒトのふんどししめてて気持ち悪くなければなんでも好きなの使えば。
66 :
デフォルトの名無しさん :02/10/25 14:36
保守。
67 :
デフォルトの名無しさん :02/10/25 15:43
C言語以外で malloc/freeの概念がある言語ってある? オブジェクト指向の、new(/delete)は除いて。
何じゃそりゃ。
69 :
デフォルトの名無しさん :02/10/25 16:33
人の褌?
70 :
デフォルトの名無しさん :02/10/25 16:44
>とても不適当である。
71 :
デフォルトの名無しさん :02/10/25 16:50
>>67 Pascal
なんでnew/deleteとmalloc/freeを区別するのか分からんけど。
俺もCは嫌い〜♪。
73 :
デフォルトの名無しさん :02/10/25 18:19
>>1 じゃ、SH3+FlashROM 2MB+SDRAM 16MBで使えるC#コンパイラ教えて。
C言語マンセー
75 :
デフォルトの名無しさん :02/10/25 18:26
>>73 それはC言語しか選べない環境だからだろ。
C言語以外も使える環境ならC言語なんか選ばない方がいい。
76 :
デフォルトの名無しさん :02/10/25 18:31
こういうスレ見ると、いつも思うんだよね〜。 このままVC++を勉強しつづけるべきか?ってね。 ちなみに、Cは大体の基本の勉強は終わってる訳だけど。 どうなのかなぁ〜。 VC++の勉強の前に、JAVAの勉強でもしておく方が良いのかなぁ〜。
>>73 ちょっと無理したらC++でもいけそうな気が
MFCは完全に無駄
79 :
デフォルトの名無しさん :02/10/25 18:34
80 :
デフォルトの名無しさん :02/10/25 20:07
VC++は言語だろ。
VC++は、天にして地。無にして全て。
83 :
デフォルトの名無しさん :02/10/25 20:21
C++はプログラム言語だよ
85 :
デフォルトの名無しさん :02/10/25 20:40
>>84 そりゃそうだろ
VC++が言語じゃないと言ってるだけ
>>85 なんだかなぁ〜・・・。
あげ足取られたような気がするよなぁ〜・・・。
たしかに、VC++言語なんて言わないけどさぁ〜・・・。
いつまでもいつまでもツッコまれるのもなぁ〜・・・。
俺は、そんなつもりで言ったんじゃないって文面みて分ってもらえない?
もっと的確な文面も作れるけどさぁ〜・・・。
俺が悪かった。間違ってました。
・・・これで、いいですか?
もっと謝れ!カス
>>88 いきなりカス呼ばわりかよ!Σ( ̄□ ̄;(w
いや、腹立つとかじゃなく、ちょっと普通に面白かった。(w
90 :
デフォルトの名無しさん :02/10/25 21:04
セックス言語
君たちこだわり過ぎ
93 :
デフォルトの名無しさん :02/10/25 21:32
わしも、VC++自体は言語じゃないと思うよ。 ビジュアルC++といいつつ、全然ビジュアルじゃないけど、 こいつは、ヤッパリC++開発環境の派生でしょ。 産業用機器制御の分野では、C言語は主流。 良い所も悪い所も判っているから、問題が発生しにくい。 でも、C言語からC++への移行は難しいから、 今はC言語を選ばない方か良いという理由には当てはまる。 C++が読めればCはある程度なんとかなるから、C++を習得する方 が良いかもね〜。
その通り。
C言語が読めれば様々な言語が読める。Cはやるべき。
>>95 CがわかるからC++もわかる思ってる奴が一番痛い。
つか、一番邪魔。
97 :
デフォルトの名無しさん :02/10/25 22:23
>>95 の言う本当の意図はよくわかんないけど、
C++はCの上位言語では無いと思うゾ。
書式が同じというだけはないかしら?
サービスとかを組む時とかは必要 GUIのアプリケーションプログラマには不要かな
>>91 しょーえーは、俺も知ってる。
・・・知ってるけど、ライブカメラがついてたのは初めてしった・・・
・・・明かりがついた。しょーえー出てこないかなぁ〜・・・♪
Cがプログラミングの基礎だなんて言ってる奴まだいるのね。
>>100 違うの?
今パソコン向けゲームプログラミングができるようになりたくて、
まずは基本からとC言語の勉強を始めたんだが…
大きく間違ってますたか?
あくまでも趣味の範疇でやってることなんだけどさ。
趣味でやるなら C からやる必要はない。 仕事でやるなら C は知っておいた方がいい。ていうか必須。
103 :
デフォルトの名無しさん :02/10/26 12:15
仕事の内容によって違う。 一概には言えない。
perl python ruby の拡張に使えるので趣味でもcは必須。(趣味はVBとかはナシね。)
Cはあらゆる分野で使われているので(しかもコアな部分) 食いっぱぐれがない。
それならC++の方が適してる。
107 :
デフォルトの名無しさん :02/10/26 12:30
>>105 Cで食べられる程の技術を持ってるならね。
Cしか出来ない30〜40代が大勢いるから、それに割り込んでゆくには相当なものがいるよ。
Cで食っていますが何か?
おじいさん?
いや20代。
111 :
デフォルトの名無しさん :02/10/26 12:45
>perl python ruby の拡張に使えるので 拡張性重視になったらもう終わりですよ。 各言語はそれぞれ違います。
112 :
デフォルトの名無しさん :02/10/26 13:34
┗0=============0┛ \===========[_|_|_|_|_|_|_|_|_|_|_|_|_|_]===========/ /三三三三三三三三三三三三三三三三三三三三\ 0 │ |∞∞∞ |::|∞∞田田∞∞|::|∞∞∞ | ::| 0 [二] | ::| |::|┏━━━━┓|::| | ::l [二] ◎○@※◎○@※. |□|.│ |┌┬┐ |::|┃/ C \ .┃|::| ┌┬┐| ::|. |□| ◎○@※◎○@※ ii|iiii|iiii|iiii|iiii|iiii|iiii|iiii| `)三(´| ::|├┼┤ |::|┃ ∧_∧ ┃|::| ├┼┤| ::|`)三(´il|iiii|iiii|iiii|iiii|iiii|iiii|iiii| @※◎○@※◎○ | ::| | ::|└┴┘ |::|┃(´∀` ) ┃|::| └┴┘| ::| | ::| @※◎○@※◎○ ii|iiii|iiii|iiii|iiii|iiii|iiii|iiii|li┏━━━━━┓|::|┃(. つ┃|::|┏━━━━━┓ li|iiii|iiii|iiii|iiii|iiii|iiii|iiii|l ◎○@iiii※◎○@ ┣┳┳┳┳┳┫|::|┗━━━━┛|::|┣┳┳┳┳┳┫ ◎○@iiii※◎○@ ii|iiii|iiii|iiii|iiii|iiii|iiii|iiii|l ○ ● ∫∬∫∬ ● ○ ii|iiii|iiii|iiii|iiii|iiii|iiii|iiii|li ○○ ●● iiiii iii ii iiii ●● ○○ [ ̄ ̄] [ ̄ ̄] ( ̄ ̄ ̄ ̄ ̄) [ ̄ ̄] [ ̄ ̄] |_○_| .|_○_| |_____| |_○_| .|_○_| K&Rを棺に納めてやろう モナモナ… ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ( )( )(, )(,, ) ,,)( )( )(, )(, ;) ザワザワ やっと死んだんだね ナモナモ……
メモリリークするようなマヌケなコードは書かない、 ということを意識してコーディングするっていう心構えみたいな ものは必要だけど、アセンブラはちと面倒だ。 だからC言語はちょうどいい。 VBやPerlのダラダラ感はきもちわるい。
C++でええやろ。うん。
CでもC++でもキレイなコードを書いてくれ。 汚いコードは読めない・辛い・鬱。 しかし、汚いコードで比較すれば、C++は殺人的だとは思う。 C++に移行しない爺って、経験長いし、Cでキレイなコードが書けるから別に このまんまで良いじゃんってのが多いんじゃないの? んで、わざわざC++に移行しないんだと思う。 もち、挫折爺もいるだろうけど。
117 :
デフォルトの名無しさん :02/10/26 14:43
たまにさあ・・・「うわっJAVAでもこんなヒドイコードが書けるのか」ってのに遭遇するよね
Cってさあ(つかCの標準ライブラリってさあ)、確かに効率よくて、 分かっててやりたいときには危ないこともできて便利なんだけど、 普段のプログラミングでそんなに危ないことしたくねぇっつーの。 エラーを値で返すと、無視して続行したいときは便利だけど 無視なんかしないつーの。(mallocとかfwriteとか…) 必ずエラーチェックコード書かなきゃいけなくて、書き忘れたら どはまりする仕様なんて…最初からエラーチェック入れといてくれ (エラーハンドラ関数を指定できるとか)。 あと、いちいちバッファの大きさを渡さなきゃならんI/O関数 (1回でもまちがえたらバッファオーバーラン)もどうにかならんのか。 かといってライブラリだけ使いやすく直しても、メモリ管理が あれじゃなあ…やっぱC++かJavaとかで書くだろ、今なら。
マクロにマクロを重ね、そのマクロにマクロを重ね・・・ っつーのだけは止めてくれよ、マジで
javaでもきちんと参照をnullにしとかないと、ガベージコレクトされないし、 JBuilder程の大きさのソフトでもガベージコレクションのタイミングでもたついてうっとい。 遅いのが一番だるいけどな。
>>118 何で一つの言語でやろうとするの ?
> Cってさあ(つかCの標準ライブラリってさあ)、確かに効率よくて、
> 分かっててやりたいときには危ないこともできて便利なんだけど、
と言う時は、C 使えばいいし...
> 普段のプログラミングでそんなに危ないことしたくねぇっつーの。
なんて時は、C++ でも Java でも使えばええやん。
つーことは、以前から言われてるはずなのに、なんでいつまでもこういう議論が続くのか...。
>>121 しかし現実には多くのソフトがCで書かれていて
そして例によって地雷を踏んではセキュリティホールを増やし続けてる。
apacheしかり。bindしかり。sendmailしかり。
>>123 人の作ったものに対して文句を言うより、まずは自分で作れ。
あなたのことだから、さぞかしバグレスなコードなのだろう。
つーか apache とか bind とか sendmail って、パフォーマンスの観点から C を使わざるを得ないと思うのだが。 アクセスが集中するサーバーの事を 123 は全く考えてないような。
>>125 アフォですか ? C++ と C でそんなに差があるとお思いで ?
単に、作成当時は C しか選択肢がなかったんだろ。
>>126 実行ファイルサイズをよく確認してから言え。
C++でスピード出そうと思ったらCと同じような使い方しかできないと思われ
>>129 煽り ? ネタ ?
マジなら、例ぐらい書いてね。
131 :
デフォルトの名無しさん :02/10/27 13:53
>何で一つの言語でやろうとするの ? 仕事でも無いのに何で言語を複数使わねばならないのですか?
Cの弱点を解決したD言語を作れ。
read.cgi
>>131 楽だから。趣味でも楽な方がいいでしょ ?
複数言語使えない方ですか ? なら、しょうがないわな。
必死だな
趣味なら、C++ を better C として使うのが好きだ。 でも最近、STL にも手を出した。 バグがない事を祈ってくれ。
やっぱりJavaだよJavaがイチバン!
やっぱりDelだよDelがイチバン!
いやんいやんperlだよこれが本命
>>130 おまえほんとにC++知ってるのか?
>>煽り ? ネタ ?
>>マジなら、例ぐらい書いてね。
MFCの SDI Hello Worldと
W32APIの SDI Hello Worldでは
起動時間が10倍くらい違うよ。C++のクラスのインスタンス化の際の
オーバヘッドの無駄時間は、MFC 1.0(MSC7.0)の時代からみんな知っている。
知らないのはおまえぐらいだよん
Ruby最強という結論が出たようなので終了ですかな?
Ruby やりたい人は Ruby してなさい。 漏れは C/C++ を遊んでる。
MFCかよ!
標準ライブラリが効率良いとか言う人いるんだ。。。
プ 非 MFC が標準ライブラリに直結かよ MFC が Win32 API のラッパーである限り、API 直叩きの方が効率いいに 決まってるだろうに。
read.cgi の話はどうなった
>>147 へへへ
クラスライブラリ使うからC++なんだろ
オブジェクト賃個なんだろ
ラップ云々ぬかすならクラス利用でC++使う理由なんてないじゃん
えっ継承、再利用 はいはい あんたがイチバン!
偉い!漏れが亜フォンでちたん
151 :
デフォルトの名無しさん :02/10/28 12:52
皆の為に保守。
javaはもうじき廃止されるんじゃなかったっけ。ネットスケープみたいに。 これからはC#
>>152 C#の方がもうじき廃止されるんでしょ?
154 :
デフォルトの名無しさん :02/10/28 14:13
C言語マンセーな方はGNUへどうぞ。 2chはCを推奨しません。
C#のWebアプリはJavaより鯖に負荷がかかるみたい。とにかく遅い。 VC++に戻ろうかと本気で考え中。
Java
159 :
デフォルトの名無しさん :02/10/29 11:07
良すれもげ
160 :
デフォルトの名無しさん :02/10/29 11:20
就職活動で老人どもに気に入られるにはCも覚えておいたほうがいいってことですか?
MSが作るのものに重いものが多いものは、その重さを解消させるための 次のハードを買わせるため?
今はJavaの方が有利だお
163 :
デフォルトの名無しさん :02/10/29 11:30
老人はCが気に入り。
マジレスするが CがいいとかC++が最初に選ぶ言語うんぬんなどはどうでもいことではないか? プログラムの力というのは、 「所定の動き」を「設計」して「コーディング」する能力であって、それは言語とは関係ない。 目的に応じて必要なものを使えばよい。 細かな文法は違うけど文法なんて問題の本質ではない。どんな言語でもプログラムの力は付けられるはずだ。 ただ、「言語そのもの」の使用方法(使い方ね)や「文法」ましてや「クラスの使用法」の学習は多くの方が指摘しているように、 プログラムの力とは別のものだと思われる。不必要とまでは言わないが。
デニス・モッチーは尊敬するがCは嫌いだな。
どうでも良くはないだろ。 最初に学ぶならFortran66よりCの方が楽だと思うが。
C言語だと覚えられないこともある 他の言語でも同じコトだけどな たまたまC言語で覚えられないことが今は重要だってだけだ
168 :
デフォルトの名無しさん :02/10/29 11:45
>>164 言語が嫌いなのはわかったから
偉そうなことは自分ができるようになったら言え。
とてもイイこと言ったよ…
>>167 が
パパ感激しちゃった(TДT)
何かで議論してると、必ず 「そんなことよりもっと重要なことがあるだろ」 と言い出すヤツがいる。
>164 マジレスなら是非とも匿名掲示板でない場所で書いてホスィ。
>>161 それをいったら、Javaの遅さと重さは、
より高速なCPUとメモリを買わせるためか?
そんなことよりもっと重要なことがあるだろ。
>>167 > たまたまC言語で覚えられないことが今は重要
それって具体的に何の事を指してるの?
175 :
デフォルトの名無しさん :02/10/29 11:56
おい
>>164 さっさと出て来い!マジレスなんじゃなかったのか?
>>166 学習でいうなら1ヶ月でいいのでアセンブラ(机上でかまわない)をお勧め
プログラムがメモリにどのように配置され動作するのか理解でき、アドレス、ポインタの概念も理解できる。
>>164 5種類以上の言語でプログラム組んでるけどなにか?
176の書き込みの
>>164 は
>>168 の間違い
どうでもいいが 175さんどうしてそんなに熱くなっているんだ?
178 :
デフォルトの名無しさん :02/10/29 12:04
>>176 そんな概念99%のプログラマには不要ですが?
結局、個人的な希望を他人に押し付けたがるおじさんだったわけか。 うざいからもう来なくていいよ。
>>178 本気でいってるかい?
それでは聞くが、クラス継承型言語を扱う上でそれがどのように配置されて動作しているか
想像できる? それが想像できるとその後の理解も早いんだよ。
99%にいらないとはまたずいぶんな数字だな。
百歩譲って仕事ではそうかもしれないけど学習には必要だよ。
183 :
デフォルトの名無しさん :02/10/29 12:15
>>183 誰それ?
1生=1言語 じゃないと生きていけないわけでもないし、
いろんなケースに合わせて言語やればいいのでは?
仕事に合わせて言語ぐらい覚えろよ(藁
186 :
デフォルトの名無しさん :02/10/29 12:24
>>180 アドレスとかレジスタとかの低水準な機械要素を意識することは
抽象度の高いプログラミングを身につける上で有害だ。
>>180 おいおい、C++のvirtual関数とかメンバへのポインタとか
メモリ配置を理解しないといけないなら、ほとんど誰も
学習できないって(w
>>164 の主張はそれなりにわかる。
MSX-BASICでアセンブラを書こうとあがいてた時期が
ポインタの理解に役立ったことは認めるよ。
でもアセンブラを学習目的に使うなら、1ヶ月も要らないと思う。
高校生以上なら、せいぜい6時間あれば概念は理解できる。
それに学習目的なら、アセンブラである必要はないよね。
Cの本に載ってる、単に箱が並んだ図でもいいんじゃないかな。
でも99%とか言ってる奴ははアホだな(w
分野によってはインラインアセンブラくらい書くだろうに。
>>185 だから、5 以降はネタだろ。気にするな。
>>178 石の気持ちをわかってあげられない人はム板にはいりません。
192 :
デフォルトの名無しさん :02/10/29 12:29
>>187 「抽象」という言葉の意味を考えれば明らかと思われ
>>186 丸投げ君や孫受けコーダをやるのでなければ、
抽象から具体まで理解してないといけないね。
バカの脳内ハードディスクには空きがないんだ YO !
167 やーい、漏れの質問に答えてくれYO・・・気になって気になってリコーダーも吹けない
196 :
デフォルトの名無しさん :02/10/29 12:31
>>189 ほんとにアセンブラが必要なやつなんか1%もいるもんか。
>プログラムがメモリにどのように配置され動作するのか理解でき、アドレス、ポインタの概念も理解できる。 たしかにアセンブラを知ってれば ポインタでつまずく人は一人もいない。 ただ、x86とかじゃなくて 必要最小限の命令セットを持ったバーチャルなCPUで 学習しないと、やる気はでないかも。 で、メモリ上で何が行われているのか知ってれば、 スタック、ヒープの違いもわかるだろうから、 ローカル変数のアドレスを保持しておいて、 スコープを抜けてからアクセスしてドッカーンって事になる 事もないだろうし、 オブジェクト指向ならポリモーフィズムがどのように 実現されているかもなんとなく想像がつくだろう。
198 :
デフォルトの名無しさん :02/10/29 12:31
164さんにやさしくされたい。
例えば、 class A{ a(){ b(); } b(){ print("a"); } } class B{ override b(){ print("b"); } } main(){ A a=new B(); a.a(); } とやった時何が起きるかも容易に想像できる。 まあ、言語使用依存である事は確かだけどw
>>192 抽象的な概念と、ハード寄りの概念は衝突しない。
衝突するのは、単に片方だけを学習しつづけてしまうから。
両方やればいいってこった。
201 :
デフォルトの名無しさん :02/10/29 12:32
じゃあお前らC++でメンバへのポインタをどうやって表現してるか しってるのかよ(w
202 :
デフォルトの名無しさん :02/10/29 12:35
おまえら、多重継承されたクラスのvtblがどうなってるのか わかってますか?
203 :
デフォルトの名無しさん :02/10/29 12:37
GUI部品やスレッドの内部を知って使えってか? そんなん無理に決まってるだろ!
204 :
デフォルトの名無しさん :02/10/29 12:39
だいいち、AdaのACCESS型やPascalのポインタならともかく Cのポインタと整数がごっちゃになった演算なんて たいていのプログラマには有害なだけだもん。 素直に配列使ったほうが速いし。
>>204 だからアセンブラだけやらずにCやPascalやJavaもやれと
何度言ったら。。。。
ただし、
アセンブラでプログラムを書くケースはないと思う。
だから、必要最低限の命令セットを持った
バーチャルCPUでのアセンブラができる環境があれば
3時間程度いじってればいい。
要するにアセンブラから学べる事がそれほど多くない事も事実。
ただし、俺はその少ないエッセンスが重要だと思ってるけど。
プログラミングってのは
プログラミング言語に詳しいだけじゃダメで
(コーダーならいいけど)
アルゴリズムの知識とか、数学なんかも必要になる。
嘘だと思ったら
http://pc3.2ch.net/test/read.cgi/tech/1020161792/l50 これに参加して優秀な成績を残す努力をしてみればいい。
プログラミング言語に関しては
論理プログラミングのprologを除けば
だいたい似たような物だと思う。
まあ、それぞれの言語には独自の言語機能が実装されていて
C++やJAVAだとオブジェクト指向に関する機能。
Perlなんかでは正規表現の機能。
それぞれ目的にあわせて使えばいいと思う。
オブジェクト指向は、初めてC言語を勉強するのと同じくらい
難しい事だけどね。
208 :
デフォルトの名無しさん :02/10/29 12:42
>>207 数学的美しさと低次元のキタナラシサを
初学者にいっぺんに詰め込むのか?
>Cのポインタと整数がごっちゃになった演算なんて これは誰が推奨してるの? 今時そんな事やってる人はいないでしょ。
>>189 昔、専門学校でアセンブラ教えていまして、その時の経験上1ヶ月というわけでして
理解が早い人は6時間でOK<でも1週間1日時間だと1ヶ月なんですよね。
実際(机上・架空)のCPUでの勉強でOK
チューリングや、ノイマンのお話も交えてやると効果高し(藁
で抽象的なプラグラムの話は私はいまだに理解できないですよ。
申し訳ない。
211 :
デフォルトの名無しさん :02/10/29 12:43
213 :
デフォルトの名無しさん :02/10/29 12:44
>>208 俺はどっちも必要だと思うんだよね。
(同時に学習するかは別として)
例えば、いいゲームのアイディアが浮かんでも
実装に関する技術がなきゃ作れないし、
実装できても、コーダーじゃ意味ないでしょ。
どっちかが欠けてるとプログラミングの面白さがわからない。
で、どっちから勉強してもいいんだから
それは個人の問題という事で、どうだろ?
>>209 メモリ上で配列がどう配置されてるかとか教えるんだろ?
「ポインタ+整数」を教えずに教えようが無いじゃないか。
>>211 全てを知ろうとするのは素人だが、内容が想像できないようでは無能だ。
>>214 ゲームのレンダリングみたいに性能要求がシビアなものは
例外として、ふつうにアプリを書く上の実装技術に
「メモリ上の配置がどうなってるか」なんて不要だし
かえって邪魔になる。
>>215 あんた本当にポインタを理解してる?
もしそうなら間違ってもそんなセリフは吐けないはずだけど。
単に自分が痛い目にあったから敬遠してるだけじゃないの?
>>215 言ってる事がよくわからないんだけど、
ポインタに整数を足すと何が起こるかは
C言語の言語仕様の特徴がすごく出てると思うんだけど。
で、
>メモリ上で配列がどう配置されてるかとか教えるんだろ?
そんな具体的なことじゃなくてもいいのでは?
というか、どこをどう解釈したの?
>>217 なら教えてくれ。
その辺を理解していない人が一概にクソコードを書くのは何故だ?
単に漏れに高確率で DQN が回ってきただけか?
>>216 じゃあ「メンバへのポインタ」想像してみてくれよ。
で、それが見当外れだったらどうするの?
想像できて何が嬉しいの?
>>217 普通のアプリってなんだ?
普通のアプリのほうが、メモリ配置がどうなってるか考えないといけないのでは?
>>203 必死だな、おい!
中身を理解しないまま使ってると謎のバグに悩ませられる事ぐらいわかってて言ってんだろうな。当然
ポインタも抽象的な概念かどうかということですね。
>>217 えーと、
>>197 と
>>199 は読んでくれた?
俺は言語機能を理解するために
メモリ上の配置を学ぶ価値があるって言ってるんだよね。
だって、そうじゃなきゃポリモーフィズムなんて
理解できないでしょ?
>>199 に書いたコードはわかる?
>>218 少なくともメンバ変数やvtblの実装は知ってますが何か?
>>221 「メンバへのポインタ」 だけだと何を指すのか曖昧だ。
もう少し具体的に指定してくれ。
>>225 ポリモルフィズムのような高水準の概念を教えるのに
「メモリ上では…」なんてやったら台無し
まーあれだ。 多くの初心者にとってJavaがイイってこった。
230 :
デフォルトの名無しさん :02/10/29 12:53
ここオモロイから、もう少し煽っていよう。
メモリ配置っていう言葉が乱用され始めてるので ちょっと注意。 メモリ配置ってのは すごく抽象的な意味で 関数の呼び出しがどう行われるのか? とか、構造体がどういう風にメモリ上に作られるのか? とか、クラスのインスタンスがどういう風にメモリ上に作られるのか? とか、mallocで作った変数と、ローカル変数の違いとか? そんな意味でよろしく。 補足があればよろしく。 そろそろ時間なので落ちます。
232 :
デフォルトの名無しさん :02/10/29 12:55
>>226 (゚Д゚)ハァ?
それと
> 215
> 「ポインタ+整数」を教えずに教えようが無いじゃないか。
は何の関係があるの?
>>197 mallocで作った変数とautoの違いは良いとして
他は本当に抽象的なのか?
「アドレス」なんて言葉が出て来たらそりゃ抽象的とは
とても言えんぞ。
プレステ2は128Bit alignmentでメモリアクセス しないといけない場合があるので、禿げしく鬱。
>ポリモルフィズムのような高水準の概念を教えるのに あれは言語機能なだけで、使用する際においては 高水準の概念じゃない。 でも、設計する時にポリモーフィズムを用いる事は 高度な抽象化である事は間違いないと思う。 今度は、言語の知識、アルゴリズムの他にも デザインっていう要素があったね。 忘れてた。 主軸はこの3つだよね?
まーあれだ。 多くの初心者にとってJavaがイイってこった。 アドレスなんて全く知らずに学べるからな。
まーあれだ。 言語の重要性がわかってない奴はプログラマにあらず ってこった。
>他は本当に抽象的なのか? 抽象的って、俺なんか言ったっけ? やべ、時間が・・・
>>232 スタックポインタレジスタを移動して
そのアドレスを記録していくだけなんだけどね。
ローカル変数はスタック上につまれた値(最適化でレジスタの場合もあり)
構造体は静的に作られた場合、最初からメモリに置かれるし、動的配置なら
スタックフレームに作られます。
間違ってたら補足してください
駄スレの伸びっぷりに1さんご満悦
>>239 突っ込みどころ満載だが、
ネタにしてもつまらなさすぎ。
242 :
デフォルトの名無しさん :02/10/29 13:03
>>226 高水準と低水準の概念を同時に教えようとする君は能無し
>メモリ配置ってのは >すごく抽象的な意味で ここか。 抽象的っていうよりは、広義な・・・ってとこかも。 メモリアドレス***にどういうデータがあって、 その上に***で・・・みたいな事じゃない。
244 :
デフォルトの名無しさん :02/10/29 13:05
漏れはアドレス叩きこみ賛成派だが、
>>228 には同意だ。
245 :
デフォルトの名無しさん :02/10/29 13:06
漏れは石川はうんこしないよ派だが、
>>244 には同意だ。
おーい、静かになってきたぞ。みんなもっと煽れ。
>スタックポインタレジスタを移動して >そのアドレスを記録していくだけなんだけどね。 アセンブラで再帰やるとわかるね。 スタックがどんなもんなのかってのが。 再帰をwhileでやるにはどうすればいいかとか。 アセンブラじゃなくてもわかる人はわかるけど、 わかり易さのはなしね。 では、落ちます。 夜に現れるかも。
多数決してるんじゃないんだから、同意とか反対とか そういう意見はいらないよ。
あ、そか・・・昼休み終了だった。つまらん。
251 :
デフォルトの名無しさん :02/10/29 13:19
いいかお前ら! プログラムが実際どう動いてるのかわからないと、 C O B O L e r と 呼 ば れ る ぞ ! !
252 :
名無し篭り :02/10/29 13:32
>>251 俺ならわかる、任せろ!
まずローダがexcutableファイルを弄くって調べて
txtセクションのエントリとかその他色々でヘッダを調べて
そんで未定義シンボルを探しDLLを持ってきてリロケーティオンして
バインドするんだ!
あとは機械語コードの実行で特権レベル0の命令はOSが独り占めマンセーしてやがるから
CALL Gateとかセグメント間jmpしてどうにかするんだな!
LGDTでディスクリプタテーブルレジスタにロードするんだよ!
この時点では32bit protected modeには移行してるからリアルモード死ねんんだな!
んで、86の場合は4KB境界にページをマップするんだ!
ふう。
色々あるからこれくらいにしとく。
253 :
名無し篭り :02/10/29 13:39
あとな、TSSはTask State Segumentだ。 TTLみたいな255回で帰ってきちゃうようなものとは違う!
254 :
デフォルトの名無しさん :02/10/29 13:44
VB等から入ってそこから抜け出せなくなると
>>1 のようになるで要注意!
気合の入った奴はアセンブラから入れ!
なんか変なのが出てきたな。 つーかゴチャゴチャ。
プログラムのロードの話が出てきたのでネタということで書き込みます。 昔、まだWINDOWSが無かったころPC98の時代 Cはメモリモデルの選択が必要であった。 これはアドレスが8ビット範囲に収めるか収めないかで選択しなければならない時代であった。 私はアセンブラで組んでいましたが、コンパクトモデルで組んでいる関係上、どうしてもプログラムサイズを 64k以下にする必要があった。しかしそれで収まりきらなくなった時、モジュールに分解して別コンパイル 必要に応じてCOMファイルを読み込んで実行する方法を使った。 この方法は当時、よく知られた方法であった。 しかし、32ビット化と高級言語の発達によってこの方法は消え去った。 呼び出しモジュールごとに構造体とプログラムポインタを設定して設計する。プログラムのチェーンも行った。 この技術はアセンブラで実現した「クラス.仮想関数」ともいえる。(当時、プログラムに継承などという概念がなかった)
>>256 > 呼び出しモジュールごとに構造体とプログラムポインタを設定して設計する。
> プログラムのチェーンも行った。
> この技術はアセンブラで実現した「クラス.仮想関数」ともいえる。
ちょち違うだろ。
DLL と言うならまだわかる。
今時の専門や大学では、C++のクラスはあってもCだけのクラスってのは無いでしょ。 むしろ%スレタイ%って言うふうに声高に叫ばなければいけない理由がわからない。
>>258 あるよ。つかC++なんかどっこも教えねーよ。
>>257 まぁ 確かにDLLのほうが近いかも。
言いたかったのは、構造体の中にプログラムのアドレスを配置して
構造体がクラスの能力を持ちはじめたこと
実装方法において動的にインプリメントしてる部分は、確かにDLLに近いといえますが。
静的にアドレスだけ変えて動かしても同じ事は可能だったのです
(当時の目的がプログラムコードの圧縮にあるので意味はあまりないけどね)
261 :
hellsing :02/10/29 15:16
諸君 私はC言語が好きだ 諸君 私はC言語が好きだ 諸君 私はC言語が大好きだ ++が好きだ ?:が好きだ マクロが好きだ 共用体が好きだ ビットフィールドが好きだ void*が好きだ ポインタ演算が好きだ ポインタのキャストが好きだ UNIXで Windowsで Macintoshで PalmOSで iTRONで メインフレームで ワークステーションで PCで PDAで 組み込みで この地上で行われる、ありとあらゆるCプログラミングが大好きだ
262 :
hellsing :02/10/29 15:16
配列を対象とした書き込みのオーバランが、轟音と共に隣の領域を 吹き飛ばすのが好きだ 連綿と構築されたヒープの管理領域がオーバランでぐちゃぐちゃに なった時など心がおどる ヘボプログラマの操るローカル配列のオーバランが リターンアドレスを上書きするのが好きだ 悲鳴を上げて壊れたスタックから飛び出してきたプログラムを SIGILLで捕まえた時など胸がすくような気持ちだった 参照先を間違えたポインタ経由の書き込みが 無関係の配列を蹂躙するのが好きだ 恐慌状態の新人がSegmentation fault の出る箇所だけを 何度も何度も見直している様など感動すら覚える 経験不足の新人達をコードレビューで吊し上げていく様などはもうたまらない 泣き叫ぶ同僚達が私の埋め込んだバグのために 金切り声を上げるクライアントに延々と罵倒されるのも最高だ 哀れなプログラマたちが雑多なデバッガで健気にも立ち上がってきたのを -gをつけると再現しないトラップで木端微塵に粉砕した時など絶頂すら覚える ポインタを理解しないヘボプログラマに滅茶苦茶にされるのが好きだ 必死に守るはずだった納期が蹂躙され ベテランプログラマが徹夜し憔悴していく様はとても悲しいものだ ソースの物量に押し潰されて殲滅されるのが好きだ バグに関係のありそうなソースをプリントアウトして、 害虫のように地べたを這い回るのは屈辱の極みだ
263 :
hellsing :02/10/29 15:17
諸君 私はプログラミングを地獄の様なプログラミングを望んでいる 諸君 私に付き従うCプログラマ諸君 君達は一体 何を望んでいる? 更なるデバッグを望むか? 情け容赦のない糞の様な領域破壊を望むか? 領域破壊の限りを尽くし三千行進んでから殺す悪夢のようなバグを望むか? (デバッグ!! デバッグ!! デバッグ!!) よろしい ならばC言語だ 我々は満身の力をこめて 今まさにバグを潰そうとする握り拳だ だがこのバグ出まくり言語で30年もの間耐え続けて来た我々に ただのデバッグではもはや足りない!! 大バグを!! 一心不乱の大デバッグを!! C はわずかにK&R付録A 50ページに満たぬ小さな言語にすぎない だがその記述力は一騎当千の最強言語だと私は信仰している ならば我らはCとコピペで総ステップ数100万と1行のアプリケーションも書ける 我々を忘却の彼方へと追いやり 眠りこけているJavaプログラマを叩き起こそう 髪の毛をつかんで引きずり降ろし 眼を開けさせ思い出させよう 連中に領域破壊の味を思い出させてやる 連中に我々のデバッグテクニックを思い出させてやる ネイティブポインタの指す先には 奴らの哲学では思いもよらない事がある事を思い出させてやる 一千行の C のコードで 領域を破壊し尽くしてやる
>>261-263 大作だな。でも70点
> SIGILL
SIGKILLのtypoだろう
> だがこのバグ出まくり言語
個人的には「未定義が多い言語」の方が好きだな
> C はわずかにK&R付録A 50ページに満たぬ小さな言語にすぎない
JISのC[X3010-1993(ISO9899:1990)]の規格書は277頁もあるんだが。
ただ、半分以上ライブラリの仕様で占められてるけど
あと同じ領域を2回freeしてハマル描写が欲しかった
> 恐慌状態の新人がSegmentation fault の出る箇所だけを
> 何度も何度も見直している様など感動すら覚える
> -gをつけると再現しないトラップ
ここら辺は笑った
266 :
hellsing :02/10/29 17:58
267 :
デフォルトの名無しさん :02/10/29 18:23
「アセンブラやってる奴はポインタでつまずかない」ってのは都市伝説だ
「プログラマはアセンブラ知っといた方が良い」ってのは 伝説というより古代人の精神訓話だな。 Java覚えるやつがまずJVMのバイトコード勉強するか?(w
269 :
デフォルトの名無しさん :02/10/29 21:07
2chのCGIはC
まぁ、アセンブラでも何でも色々知っといた方が何かと良いだろ。
「宝袋を荷負して普く財利を施し、金槌を執持して、 諸々の患難を除き、衆縁吉祥にして、家事障り無く、 子孫永昌にして正命相続し、智断の二徳荘厳成就し 、華果の両報具足円満にならん」 「米銭絹布間断なく潮の満つるが如く集り来り、 災いを斥け、病難を払い、笑声家門に満ち、 官録出世、福禄倍増と守護なさしめたまえ、 慈眼視衆生・福寿海無量・所願不虚・亦於現世得其福報」 「寿福増進安穏楽・除病延命息災我・福我円満重果報・ 衆人愛敬従恭敬・入来衆人得七宝」
>>271 貴重なお言葉ありがとうございます
でも、激しくスレ違いでございます
間違えましてございます 激しく板違いでございます
274 :
デフォルトの名無しさん :02/10/29 21:21
Cですら使えない世界のプログラミングも未だに存在する
>「プログラマはアセンブラ知っといた方が良い」ってのは >伝説というより古代人の精神訓話だな。 ポインタとかスタックとかヒープがわかってりゃいらないけど いくら本読んでもわからない奴ってのは コンピューターの仕組みがわかってないわけで そこがわからないと一生、ポインタなんてわかんないだろ。 必要最小限のコンピューターの知識を得るために、 必要最小限の命令セットしかないCPUのアセンブラだったら やる価値は充分ある。 まあ、そんな便利なものを作ってくれる奴が いるかどうかは疑問だけど、 俺は大学でCPU設計をするまえに、そういうシミュレーターを 使う機会があったよ。 まあ、俺はポインタからなにからわかってたけど、 (わからない奴がなぜわからないのかがさぱっりわからないけど) そのアセンブラをやって、ポインタがわからない奴がいたら キチガイだと思った。 他にいい勉強方法があったら初心者に教えてやれ。
276 :
デフォルトの名無しさん :02/10/29 21:54
普通に入門書のポインタのところ読んで わからん奴はプログラマにならんでいいよ むろんそれくらいでアセンブラ勉強する必要なし
やっぱりC言語程度で挫折して糞スレ立てる人って VBから入った人?
279 :
デフォルトの名無しさん :02/10/29 22:41
まじ同意。 でもC言語でしかプログラムを考えられなかったやつが、委譲とか継承とか多態性を使いこなして プログラミングしていくようになるのを見るのはなかなか面白いものがあるな。
しっかし、勉強するならいろんな事を知っておいたほうが良いと思うのだが、 何かにつけて理由をつけて、勉強を拒否しているようにしか見えない人多いね。 しかも、学ぶべきアセンブラの知識も仮想的なCPUを使った「教養」程度のことなのに... そんなレベルの知識でもしってしまうと「抽象化された概念」の理解に影響があるとかどうとか(藁 アセンブラに限らす、いろんな言語を触ってみるのは有意義だと思うよ。 所詮、こうぼうは筆を選べずということだな。
281 :
デフォルトの名無しさん :02/10/30 01:35
これからC言語でDOSプログラムをたくさん作るつもりだ。
283 :
デフォルトの名無しさん :02/10/30 03:17
CやC++ができるひとは、OSのほうをセンター試験BASICで自在にあやつれるようにしてください。 CPUの性能あがったなら、その能力をつかいやすさに還元してほしいです。
CPUの性能あがったなら、その能力を使う人に還元してほしいです。
>>283 (゚Д゚)ハァ?
センター試験作ってる人に BASIC の機能強化でも依頼しといて。
OS がどんなに優れていても、言語の方でそれを呼び出す機能が無ければ
どうしようもないの。
>>272 でもと言うな! しかしながらと言え!!
>>264 「市ね」 としか言えない可哀想な人ハケーン
1はCの精神すら知らない(理解できないなら尚更)素人だろ。 喪前ら相手にしすぎ。
>>288 頼むからお前はCで書かないでくれといいたいコードはよくある。
そいつも好きでC使ってるわけじゃないんだろうが。
つーわけでこのスレでCをあきらめてくれた方がむしろありがたい。
>>288 4 より後ろは全部ネタなんだから堅い事言うな。
291 :
デフォルトの名無しさん :02/10/30 10:56
なんだかんだ言ってその古臭い言語とその派生がシェアを独占しているのも事実。
294 :
デフォルトの名無しさん :02/10/30 12:43
繰り返すがアセンブラやったところでポインタ理解できない奴はその関連がわからない オブジェクト指向を学んだほうがよほど早くポインタを理解できる
ポインタくらい普通に理解しろ
>>294 (゚Д゚)ハァ?
アセンブラいぢってポインタ理解できないなら、その他の何やったって結局
ポインタ理解できないだろ。
アセンブラではアドレッシングをきちんとできないとプログラムできない。
そのアドレッシングを高級言語でラップしたのがポインタ。
だからアセンブリ言語を習得すればポインタを理解しやすくなるのは自明。
(必ず理解できるとは言い切らんが)
つーか、オブジェクト指向そのものにポインタなんか出てこないし。
「オブジェクト指向を学んだほうがよほど早くポインタを理解できる」 のは
どういう理由?
インスタンスと参照の事を言ってるのかひょっとして?
参照のこといってるんじゃないの?しらないけど。
ティムポのこといってるんじゃないの?しらなけど。
>>297-298 参照って、特定のオブジェクト指向型言語の実装の事で、オブジェクト指向そのもの
とは関係無いでしょ?
それとも 294 は特定のオブジェクト指向型言語を言ってるのかな?
>>299 ティムポって、特定の 2 ちゃんねる型言語の実装の事で、2 ちゃんねる
そのものとは関係無いでしょ?
それとも 294 は特定の 2 ちゃんねる型言語を言ってるのかな?
つーか、294 はポインタごときを高尚なものとして捕らえてる時点でだめぽ
>>294 アセンブラ全く知らないだろ?
おまけにオブジェクト指向も良くわかってないだろ?
つーか、299 はティムポごときを高尚なものとして捕らえてる時点で処女 http://sports.2ch.net/test/read.cgi/olympic/1013965500/l50
つーか、294 は 「繰り返すが」 って何を偉そうに
つーか、294 はネタ
おれは、めちゃめちゃ理解してるよポインタ
ポインタ理解できてない奴は結局参照で躓いている。
>>307 void func() {}
void (*a)() = func;
この時 ***a はどこ指す? と言ってみるテスト
>>309 プログラマ的にはあほなコードだけどな。
>310 ああ。 漏れも、初めて見た時 「( ´,_ゝ`)フーン」 って思ったけど、実際に使った 事は一度も無い。 つーか、C がなぜこういう挙動をするようになってるのか不思議だ。
>>309 なにそれ?
そんなコード動くわけないだろ
>>312 頼む、頼むからネタだと言ってくれ・・・。
314 :
デフォルトの名無しさん :02/10/30 15:04
307 がポインタをめちゃめちゃ理解してない事をカミングアウトしました。
これはアセンブラをやっても理解できない類のものだね。
>>315 うむ。C 独特。つーか覚えてても意味ない。
あー、あれだ。 昔の C の関数ポインタ経由での関数呼び出しって、 (*a)(); としか書けなかったんだよな確か。それを a(); でも呼べるように、かつ既存のコードも動くようにって事だろうな。
318 :
デフォルトの名無しさん :02/10/30 16:25
Cは高級アセンブラと言うことでよろしいですか?w
関数ポインタって何だ?
関数ポインタって何の役に立つの?
321 :
デフォルトの名無しさん :02/10/30 16:51
Cのポインタは中途半端に抽象化されてるせいで却って理解しにくいとも言える。 アセンブラのほうが原始的で具体的なぶん却って理解しやすい。
>>321 だから『w』って付けたんですよ
学生の頃教授が冗談で(冗談じゃないかもしれんけど)言ってたの思い出したから書いてみた。
>>320 関数ポインタを使えばひとつのポインタ変数で関数のエントリポイントを受け渡すことができるから
関数自体を引数にするようなことができる。
>>323 なるほど。引数に関数が渡せるっていうのはすごいかも。
アセンブラやれ。
C++をメインに使えば全て丸く収まるじゃないか。
言語以前に、プログラマーという人生を選ばない方が。 今ならまだ間に
C++をオブジェクト指向を無視して使っていいですか?
>>330 C++に手を出す前に日本語の勉強をしなさい
秀丸作者は「プログラムは短い方がいいというのが信念なので、 ネストがどんなに深くなってもサブルーチンに分けるようなことはしません。」 だそうです。 ソースコードにもコメントはほとんど書かないらしいです。 秀丸はすごいけど、一緒に仕事したくないなー
関数へのポインタか・・ たまにマニアなヤシが使うよね
335 :
デフォルトの名無しさん :02/10/30 20:01
当然。
>>334 > たまにマニアなヤシが使うよね
qsortを使うときに普通に使うけど...
signal受信するときに普通に使うけど...
君はCよりもCOBOLの方が似合いそうだね
OOにかぶれたC厨房が乱用するよね>関数ポインタ
C厨房でOOにかぶれるならC++をお勧めしろ
ポインタがあって得した気分になるアルゴリズムってあんまりないな
341 :
デフォルトの名無しさん :02/10/31 03:14
>>340 クラスのメソッドには関数(インプリメント部)へのポインタが入ってるよ。
アルゴリズムじゃないけどね。
>>341 ポインタがあって得した気分になるアルゴリズムってあんまりないに賛成したね。
関数の名前空間分割用に、関数ポインタ構造体をツカッテマス。
関数ポインタなしでプラグインどうやって作るの?
ポインタと関数ポインタが共に無いと qsort() は実現不可能だが?
関数ポインタなしでは、イベントハンドラ作れません。
>>348 継承って内部的には関数ポインタじゃん(藁
>>349 今度は関数ポインタって内部的には32ピット整数じゃんとか言うつもりですか(藁
それなら関数ポインタなんか要りませんねぇ。
何にせよ、1 はアフォ
C言語は高級言語といわれているけどJavaやC#なんかからすると 低級言語だな。
>>350 この馬鹿。ポインタの内部表現をアドレスにする必要はない。
だが関数ポインタの類の機能を実現する存在なしには、OOP
言語のインターフェイスの機能を実現することは不可能。
>>356 実装が内部的にどうなっているかはあまり関係無いだろうよ。
プログラマが表面的にポインタを使う事によって、どんな恩恵があるのかと
問いたいんだろうよ。
で、355 なんかはどうだ?
>>356 つまり内部表現がアドレスであるCの関数ポインタは要らないってことですね。
>>359 > 内部表現がアドレスであるCの関数ポインタ
( ´,_ゝ`)プッ
C FAQ でも読め。
>>359 この馬鹿。どこをどうよむとそういう解釈になるんだ。馬鹿。
>>359 内部表現がアドレスかどうかはこの際関係無いだろう?
>>357 ちゃんとした用語である高級言語ではなく
ここでいわれた比喩の方を正しいと思っているのですね。
>>363 当たらずとも遠からずだな。
少なくとも Pascal あたりに比べると C は水準が間違いなく低いと思う。
大は小を兼ねるって、低級言語でも集積すれば高級言語のレベルまで高められる。
MASM なんかいい例だ。
だから漏れは、適度に小回りが効いて、やりようによっては大雑把な事もできる
C が好きなんだが、これは漏れの単なる意見。
3 6 6 必 死 だ な
>>367 大は小をかねるの使い方がおかしいですよ。
それに低級言語で集積しなければ出来ないことを簡単に出来るのが高級言語なのです。
適材適所、それをつかうことが最適なら、VBもアセンブラも使え。 肯定できない単一言語依存型ロートル馬鹿はイッテヨシ、という 結論でいいですか?
3 6 6 ま す ま す 必 死 だ な
煽られて冷静になるかと思えば、ますます荒れまくってるところを見ると 3 6 6 め ち ゃ め ち ゃ 必 死 だ な ところでまさか 368=372 とでも思ってるのだろうか。
>>374 オウム返しのレスはやめたほうがいいよ。2chで言っても聞かない奴ばかりだろうけど。
も う だ め ぽ
まあ、落ち着いて、矢沢さんの本でも読もうじゃないか。 話はそれからでもいいだろう。
>>367 > だから漏れは、適度に小回りが効いて、やりようによっては大雑把な事もできる
> C が好きなんだが、これは漏れの単なる意見。
第2次世界大戦時の零戦みたいな感じだな。
旋回性能は高いけど防弾性を犠牲にしているのですぐに落ちる
玄人に使わせると他の戦闘機と互角に戦うことも出来たが、
素人に使わせるとろくな戦果を上げることができない。
一概に低級言語が劣っていて高級言語が優れているとも言いきれないだろ 趣味のレベルなら高級言語=優秀という事で良いと思うけどね 比較的低級なCですら使い物にならない分野もある
>>383 当方では防弾の必要はありませんが何か?
防弾の必要があるのは、あなたが C を使う場合ですよね。
「玄人に使わせると他の戦闘機と互角」 (゚Д゚)ハァ? 何で互角?
・・・ああ、あなたが C を使う場合ですね。
383 は小型戦闘機が必要な局面でも大型空母を持ってきて、「撃たれても平気
ですが何か?」 とか言ってそう。
つーか、低級だろうが高級だろうが、コーディングでポカすれば意図通り動かない のは同じだろうに。 相手によって武器を選べない香具師は可哀想だ。 相手によって武器を選ぼうとしない香具師は逝ってよし。
つまり逆を言えば、C だろうが何だろうが動くものを作れば動くと言う事。 動くものを作れないなら、つまりその道具をきちんと理解していないという事だから 使ってはいけない。 C できちんと動くものを作ってる人はいっぱいいるんだしな。
じゃあ何だ、Cをクソだの使えないだの攻撃してる奴はCを理解してないと いうわけか?情けねーな。 2ちゃんのスレで無知晒して「もう来ねぇよウワァァン」とか逝ってるみたいだ。
ちょい訂正。 2ちゃんのスレで無知晒して叩かれて「もう来ねぇよウワァァン」とか逝ってるみたいだ。
>>385 > 当方では防弾の必要はありませんが何か?
君って神だね。
俺は少なくとも1万行以上のコードを書くと必ずと言っていいほど
バグが発生し、単体試験レベルだと頻繁にcore dumpする。
assertで「こんなとこにこんなデータはこない」と表明しとくと
数十箇所でassertで引っかかる。
purifyをつかってメモリリークを調査すると何カ所かリークしてる。
結合時には何とかメモリリークとかcore dumpしないようにしてるけど、
こんな俺はCは使わない方がいいのかな。
>>390 ちゃんと関数単位にテストする。
テストが完了するまでその関数は使わない。
1 つの関数が長すぎる。
複雑なポインタやデータ構造を扱う時にラップ関数を用意していない。
バグる原因はそんな所じゃないの?
丁寧に書いていけば、そんな悩ましいバグは出ないと思うんだけど。
漏れが神かどうかは知らないけど、手に負えないバグを抱えた事は無いよ。
つーかこれって、C 以外で書く時にも当てはまる条件だと思うんだけど・・・。
>>391 それをCよりもやりやすい言語があるんでは…
最近の書き込みみてると
ますます
>>1 の擦れたいに近づいているような気がする(藁
Cは細かい操作ができる分、リスクも伴うのも確か。
その分、コンピューターの作りに精通していたほうがバグも出しにくいし、また
その知識も求められる言語でしょう。
そういう細かいところ(ポインタ操作等)ができるところがCの素晴らしい点であり、
逆に言えばその必要(ポインタ操作等)が無いならC使わなくてもいいということかなぁ。
実際、多言語より難解なのは(難解なことができて一人前)なのは確かだし。
>>394 その論でいくと、VB とかでクソコードを書いてる香具師も一人前と見做されそうだな。
C は、手続き型としてはほぼ何でもできる言語で、軽くコードサイズが小さ目という
特徴がある。
その特徴によって C を選択しているだけなのに、その一部の機能に過ぎないポインタ
をこれ程大きく取り上げて難しいのリスクがどうだの騒ぐのは何故?
第一リスクって何だ?
コードを書き間違えれば動かないのは C でなくても同様で当然だろうに。
>>395 くそコード各 人は、どんな言語でもくそコード書くよ。
んじゃ何故くそコードをかいてしまうのか?
経験が足りない、勉強が足りない。実力が足りない ということでしょ。
言語の責任ではない。
んでCが多言語より簡単でしょうか? と問いたい。
断っておくが私はCを否定してるわけではないよ。
そうそう。安易にCを押しつけないでほすぃ。 Cが必要なのはOSやマシンの知識が要求される場所だろうし、 そういうところに素人さんが増えるとメンテナンスが大変。 最初に勉強する言語というだけならCでもいいと思うが、 人に見てもらう必要があるコードを書くならたくさんの まともなCのコードを読んでスタイルや慣用句、論理を身につけて もらわないと奇抜で読むのが大変な上に修正困難なコードが増える。
>>396 難しさの種類が違うから単純は比較できないけど・・・。
難しいかどうかは主観によるし・・・。
C++ > Java/C# > Delphi/C >> VB くらい (メジャーなものだけでスマン)。
あくまで漏れの主観。
でも、クソコードを書くかどうかは、言語の難易度とは関係無いんじゃないか?
VB とかで綺麗なコード書いてる人が、C でクソコードを書く例を見たことが無い。
ってのは漏れのサンプルが偏ってるのか?
あと、入門する時に、簡単な言語から入ればいいというのは絶対違うと思う。
C から入れとは言わないけど、1 が言うようにいきなり GUI やネットワークに
とりかかるのだけは絶対間違ってると思う。
> 断っておくが私はCを否定してるわけではないよ。
それは 394 を見ればわかる。
自分の番号間違えたよ・・・395 ですた。
>>397 > まともなCのコードを読んでスタイルや慣用句、論理を身につけて
> もらわないと奇抜で読むのが大変な上に修正困難なコードが増える。
何度言わせる。
それは C でなくても何ら違わないだろうに。
つーか、固定長ファイルのバッチ処理を VB にやらせるのは止めてくれ。
>>398 くそコードの生成と言語の難易度は関係ないとかいているつもりなのだけど...
んで、単純に難易度だけど Cは多言語より難しいんでは? というのが私の主張
402 :
デフォルトの名無しさん :02/10/31 15:04
C爺がうぜえ。 氏ね
>>397 > そうそう。安易にCを押しつけないでほすぃ。
一体誰がそうしてるの?
>>394 C言語なんざ、ドブに流しちまえスレなんだから当然の流れだな。
手続き型マンセーで軽くコードサイズが小さ目とか言ってる、香具師は糞食らえだ。
言っておくが、何々言語マンセーは否定する。
日本語が変ですが理解してやってください。
うぜえとか氏ねとかしか言えない可哀想な402
>>401 そーだね、すまん。
で、C が難しいかどうかは 398 の通り。
でも、404 見てやる気無くしたよ。
404 Not Found そりゃやる気無くすわな
ちなみに漏れは C マンセーとは一言も言ってないので念の為。
410 :
デフォルトの名無しさん :02/10/31 15:24
>1 が言うようにいきなり GUI やネットワークに
>とりかかるのだけは絶対間違ってると思う。
>>1 はいきなりGUIやらを使えと言っているのか?
ライブラリの適当/不適当を言っただけでは。
414 :
名無しさん@Emacs :02/10/31 15:50
C言語のどこが難しいんだよ、市ねカスども
C++使えよ。素直に。
C言語はどこも難しくない。よってVBも簡単ではない。当たり前のことだ。
>>414 1.CとDelphiどっちが簡単?
2.CとC#どっちが簡単?
3.CとJavaどっちが簡単?
4.CとC++どっちが簡単?
こう言う事だと思うが。全部Cと言いきれる?
>>414 C言語が多言語より難しいと発言している人がCをマスターしていないと思い込まないように(藁
僕はCに熟練すればするほど、Cの言語仕様がもつ危険性やリスクを理解できると思うのですが...
Cを簡単だと述べる貴方はCについて何所まで熟知しているか疑問。
何と比較するかによるけど、 確保した領域を添字が越えたからといって 言語レベルで例外が発生するわけでもない。 実際いまだに buffer overrun が後を立たないわけだし。 このことだけとってもCは難しいんじゃないか?
420 :
デフォルトの名無しさん :02/10/31 16:03
遅いレスで申し訳ないが。 >プログラムの力というのは、 >「所定の動き」を「設計」して「コーディング」する能力であって、それは言語とは関係ない。 これがよくわかりません。 164さん、言語とは関係無いように「所定の動き」を「設計」して「コーディング」する能力を実際に見せください。 具体的にお願いします、無知な守れですがよろしく <(_ _)> >目的に応じて必要なものを使えばよい。 >細かな文法は違うけど文法なんて問題の本質ではない。どんな言語でもプログラムの力は付けられるはずだ。 > >ただ、「言語そのもの」の使用方法(使い方ね)や「文法」ましてや「クラスの使用法」の学習は多くの方が指摘しているように、 >プログラムの力とは別のものだと思われる。不必要とまでは言わないが。 言語はその「プログラムの力」とやらより必要ではないと? 言語を使わなければ実際のプログラムは作れないのに? 言語好きな私から見たら その「プログラムの力」がそこまで重要だとは到底思えませんね。
>>418 > Cに熟練すればするほど、Cの言語仕様がもつ危険性やリスクを理解できる
つまり熟練すればするほど簡単になると言う事では?
何をすればどうなるかわかるわけだから。
>>419 buffer overrun させるような人が C をマスターしているとは思いたくない・・・。
実際のところ、一人で buffer overrun 発生させる人はいないでしょ。
別々の人がコーディングしてて、仕様の疎通がうまく要ってない場合がほとんどで、
それは言語自体のせいじゃない。
言語レベルで例外を発生させないのは、何より速度の問題。
これはまあ、近年のコンピュータでは重要じゃないだろうけどネ。
しかし、言語レベルで例外発生しようがしまいが、そのプログラムがまともに動いて
いないのは明らかじゃないのか?
プログラムがクラッシュするのを言語のせいにするのはお門違いだ。
>>417 漏れは 414 じゃないが、
1. C = Delphi
2. C < C#
3. C < Java
4. C < C++
大きい方が難易度が高い。漏れにとって。
で、これは漏れの意見だから重要じゃないとして、
一体この質問が、414 が言ってる 「C 言語のどこが難しいんだよ」 と何の関係
があるの?
>>420 164じゃないが・・・
言語より設計能力が大事だぞ。
その次(というか同じ位)に必要なのは、設計物を実際に走らせる土台・プラットフォーム知識だ。
例えばWinアプリならAPIの知識が最低限必要。Webアプリなら○×△・・・分かるな?
設計能力が無ければ、それらをどのように組み合わせ・運用すればよいのか分かるまい。
言語知識はそれらに続くものであり、言語だけ突き詰めた所でなにが作れるのか問いたい。
言語とは関係ないように設計する具体的な方法も分からないのなら、喪前のプログラムは使いたくない。
つーか、仕様書すら必要無いのかよ?
>>421 buffer overrunさせるのは技術力や仕様のずれのせい。
buffer overrunで任意のコードを送れたり発見しにくいバグになるのは言語のせい。
そう、言語ではなく使う人間の問題です。 まあそういう人間しかいない環境なら使いこなせない言語を選択するのは間違いだけど。
>>422 難易度が高いものを難しいというんだよ。
>>425 言語にも無視できない問題があることを無視すんなよ。
このスレなんだかわかんねー。 ふつうC++だろ。それで結論じゃないの?
>>422 「C 言語のどこが難しいんだよ」を「C言語は簡単」と取った。
もっと簡単なのがあるんじゃないのか?と聞いてみた。
>>427 その 「言語にも無視できない問題」 を晒せ。
どうせあんたが単に使いこなせなくて出た不満しかないのだろうけど。
435 :
デフォルトの名無しさん :02/10/31 16:30
配列を扱いきれなくてバグを出す人達がいるスレはここですか?
>>434 使いこなせなくて出た不満じゃないか。なーんだ。
>>436 フェールセーフとか言う考えを持って無いんだろうな。
それじゃあ一生安全なプログラムは書けないよ。
>>438 フェールセーフはプログラマがユーザーのためにプログラミングするものだ。
全ての怒りうる可能性を見極められないで、よくプログラマやってるな。
あ、そうか、プログラマじゃないのか。
つーか、こっちも別に C ばっかやってるわけじゃないけど、C のリリースした
プログラムでコケたのなんか 1 つもありませんが何か?
実績無視して 「一生安全なプログラムは書けないよ」 って言い放つんかい。
>>438 自分が危険なコードしかかけないからと言って、人のまでそうだと思うな。
>>439 デバッグ段階でこけたことはあるんだろ?
>>439 すべてのおこりうる可能性が見極められないからやるんじゃん。
ユーザーのため? アフォですか?
実績無視してって、実際buffer overrunでシステムで進入できたりするじゃん。
>>440 自分が危険なコード書かないからと言って、人のまでそうだと思うな。
>>442 なら buffer overrun 防いでくれるような言語でシステム書いてみれ。
445 :
デフォルトの名無しさん :02/10/31 16:46
結局みんなCから始まってるんだべ? だからC++とかC#が簡単だって思えるんだよ。 Cが簡単っていう奴は、まだまだ勉強不足。 Cがむずいって奴は、Cの奥底を知ってるわけで、 Cのそういう部分がC++やC#では改善されているって事。 オレもCから始めた輩だけど、 もうそろそろCとC++の教育現場での立場を逆転させた方がいいと思う。 Cを勉強するのは必要になった時でいいんでないかな。
>>443 あーはいはい、あんたがそうできないのはわかったよ。
成功してる例があるんだから、失敗してるのは言語のせいじゃないだろう?
>>444 buffer overrun 防いでくれるような言語でシステム書いたところで
> buffer overrunで任意のコードを送れたり発見しにくいバグになるのは言語のせい。
というのは変わらないよ。
話を摩り替えようとしているとしか思えない。
>>440 そりゃ初心のうちはな。
仕事で書くようになってからは 1 度もない。
バッファの扱い方なんか決まりきっている。
>420
つまり、プログラムを設計できる能力さえついていれば、どんな言語を使っても目的の物が作れるということ。
逆に言えば、その能力が高めていかなければ応用力がないプログラマになってしまうということです。
例えば printf関数の文法にどれだけ詳しくなってもそれはCだけの話特定のクラスについても同じことが言える。そんなものは使う時にドキュメントで調べればいい、プログラムを学習する時にその部分は重要ではない。
スカラ変数しかない言語もあれば、スカラ変数はないものもあり。swith caseが無い言語もある。
どんな場合でもその環境に応じて目的の物をコーディングできる力。
ドキュメントやサンプルがなくてもそれを調べられる力。
言語に囚われないプログラムの能力とはそういうものだと考えています。「見せろ...」というのはどうやったら見せられるのかな。ちょっと考えさせて
>>421 えーっとCは細かいところで操作できる言語なんだ。だから多言語ではできないこともできてしまう。
他の言語使ったことありますか?
Cよりは安全だよ。なぜなら危険なことができないからね。
例えばPerlで スカラ変数を宣言する。
pushでいくらでも(有限ではあるが)配列を入れられるよ。
(ある意味こちらのほうが怖いけど)
メモリバッファオーバーフローなんてのは存在しない。
>プログラムがクラッシュするのを言語のせいにするのはお門違いだ。
あなたの主張は正しい。
しかし、Cが誰にでも簡単に扱えて危険なこともおこらない万能な言語であれば、
こんなにもバグはでないよ。
致命的なクラッシュの危険性も無視できるよ。
世の中C言語だらけで皆簡単にマスターして全員ハッピー!
現実はそうではない。
知らないなら、どんな危険なものを使ってても安全だと思い込むことはできる
>>447 そんな事言われても、それは漏れの書いたコードじゃないから知らない。
何でいまさらそういう問題のあるシステムが存在するのか理解できない。
>>445 禿同。
これからプログラミングを始めたいという方はC言語は選ばない方がいい。
>>450 つまり、漏れがプログラマというものの敷居を高く設置しすぎていると言う事?
バッファオーバーランさせるような甘いちゃんでも堂々とプログラマ名乗って
いいという事?
> buffer overrunで任意のコードを送れたり発見しにくいバグになるのは言語のせい。 なんで?
>>455 C言語によるbuffer overrunの危険性がどういうものか調べてください。
結局あれだな。 自動車は事故起こりやすいから、事故起こりにくい電車を使いなさいというアレ。
というより 自動車は事故起こりやすいから、シートベルトを締めなさいというアレ。
>>423 そりゃきちんとした設計は必須でしょうね。
バグが無く、他人が理解しやすいようなソースを作るときは。
しかし言語について"不必要"に近い考えの164さんは理解できません。
実際のプログラムの中身は言語によって書かれたソースだし、プログラマは日々言語の世話になっている。
1日でLispをマスターしろと言われて皆ができるならこんなこと書いてません。
ただ2ちゃんねるで言語厨があーだこーだ言ってるのが嫌だからそう言ったのだとしたら
取り消して欲しい。
結局あれだな。 自動車や電車は事故が起こりやすいから、事故が起こりにくい飛行機で快適な旅をして下さい。 てことだな。
というより 自動車や電車は事故が起こりやすいから、保険に入っておきなさいってことだな。 保険に入っていれば事故がおきても生活が危機的状況になる事は少ない。
┌─┐ |も.| |う | │来│ │ね│ │え .| │よ .| バカ ゴルァ │ !!.│ └─┤ プンプン ヽ(`Д´)ノ ヽ(`Д´)ノ (`Д´)ノ ( `Д) | ̄ ̄ ̄|─| ̄ ̄ ̄|─| ̄ ̄ ̄|─□( ヽ┐U 〜 〜  ̄◎ ̄ . ̄◎ ̄  ̄◎ ̄ ◎−>┘◎
初心者にCは基地外に刃物だって逝ってるでしょ
最初は自分の足を撃たせない言語にすれ
465 :
デフォルトの名無しさん :02/10/31 17:29
「使う側が気をつければオーバーランは生じない」と いう責任転嫁は最低のデザイン。
466 :
デフォルトの名無しさん :02/10/31 17:31
やっぱ結城先生のPerl言語プログラミングレッスンが最適だよ。 初心者には。
「自動車を運転する側が気をつければ事故は生じない」と いう責任転嫁は最低のデザイン。
だから自動車にはさまざまな安全対策がなされているわけだが。
何々? Windowsのこといってんの?
470 :
デフォルトの名無しさん :02/10/31 18:03
Cもトヨタを見習えと?
471 :
デフォルトの名無しさん :02/10/31 18:14
あああー もう言語云々とか初心者云々はいい! 好 き な の を や れ ------- the end ---------
言語云々、初心者云々のスレですが何か?
---------- this is start -----------
>>459 164は「言語に縛られるな」と言ってんじゃないの?
CマンセーとかC++マンセーとか言うのは間違いで、それより設計を(以下略
>CマンセーとかC++マンセーとか言うのは間違いで、 なんで他人にそんなことにまで口を挟まれなければならんの? うざい。
476 :
デフォルトの名無しさん :02/10/31 18:39
>>476 えらそーだな、おまえ。そなこたーわかりきってのな、だからできるだけゆうりなげんごはなに?
とか、かんたんなのは?ってきぃてんじゃねーか。
>>475 >なんで他人にまで
.... まぁ ここにきてる人間は基本的に他人だろ(藁
君はプログラムうんぬんの前に議論すらできない可愛そうな人のようだ。
唯一のよりどころのCに文句をいわれ(誰もけなしてなぞいないのだが
面白くないのは理解できるが、もう少し他人の意見を聞く心構えが必要だね。
ま、煽るにしてももう少し面白くやってくれよ。「うざい」なんてのは下ノ下だぞ。
アプリを使う側からしたら、バグさえ出なければCであろうがC++であろうが関係ないじゃん。 さすがにVBはランタイムがしこたま必要だから嫌がられてもおかしくないけど、本質的には言語の問題じゃない。 C++でバグが組み込まれたアプリと、Cでバグが無いアプリとどっちがいいのよ? 一番重要なのは成果物であって、完成度の高いものを目指すにはまずは設計力だろ。 同じ設計力で、CとC++それぞれで組んだとしたら、信用度的には同じゃないか? ポインタがどうのと言う奴ほど言語の事が分かってないと思われ。 言語重視な奴はさっさと辞めてくれ。同業者として迷惑だぜ。
>>479 今の初心者にはC言語はお勧めできません。とういうスレであって職業PGにCを使うなというスレではないはずだが。
この基地外はどこでまぎれこんだんだ。
>>479 一番重要な成果物は設計書じゃないですよ(w
>>475 煽り下手すぎ、いや、ほんとに。おもしろくねぇな、おまえ。
487 :
デフォルトの名無しさん :02/10/31 20:12
423晒しアゲ
488 :
デフォルトの名無しさん :02/10/31 20:16
で、なんだ? 結局Effective C++を読めってことだろ? スコットマンセー。
言語によって設計も変わると思うのだが...設計って何?
言語によって家族計画が変わります。
来年こそはJavaco風な娘を作ります。
492 :
デフォルトの名無しさん :02/10/31 20:43
CはOSを書く言語です アプリ書くなんて正気の沙汰じゃないです
493 :
デフォルトの名無しさん :02/10/31 20:44
エフェクティブ買うつもりで間違えてアクセラ買いました やはりCは危険です
あくせらも、イイ!
こんなスレたてんなよホントに
Cだけで書いたWinアプリなんてバグだらけだよ
498 :
デフォルトの名無しさん :02/10/31 20:59
>>497 君はCだけでWinアプリやったことないだろう。
あのwin_messageをcase文で飛ばして処理して、安全にメモリリークなしでアプリが組めるとしたら誉めてあげるよ(藁
PASCAL形呼び出しとかC標準ではサポートしてないよね? 自分でスタックコントロールスルノデスカ?
おれはそんな芸当できないよ。実力不足だな。すまん。
みんな実力不足
>>497 俺の作ってるフリーソフトとかね。もう、バグだらけで参ってるよ。
503 :
デフォルトの名無しさん :02/10/31 21:20
言語によってバグのできやすさに差があるのは明らか。 「どんな言語でも同じ」とぬかすアフォはただの無知
>プログラマは自分の好みの言語を深く愛する質だし、
>>500 んじゃやってくれ。3.0、3.1のころはともかく
今のWINアプリをCだけで組むのは言うのは簡単だが、やってみると大変だよ。
へろーわーるど だけ出してできました。
なんて言わないでね。(藁
つうか、WINアプリをCだけで組むなんて、そんな無益なこと誰がやってんだ?
言語のせいにするヤツはどんな言語使っても同じだし、
禿しくスレ違いなのが紛れ込んでるな。 言語云々虫だからしょうがないのか? 言語云々虫が大量発生しております語虫いして下さぁい。
508 :
デフォルトの名無しさん :02/10/31 21:48
ファーストステージとしてCとVBは危険 使用者の実力を反映してしまうからな
510 :
デフォルトの名無しさん :02/10/31 21:52
CはUNIXのための言語だ 俺の辞書にはそう書いてある
ジョセフ犬はどこ行った。 まさか、言語云々虫に頭からバリバリやられちまったのか? ジョセフぃーぬ!!!
>>499 > 君はCだけでWinアプリやったことないだろう。
> あのwin_messageをcase文で飛ばして処理して、安全にメモリリークなしでアプリが組めるとしたら誉めてあげるよ(藁
アホでも組めるわ。
というかメモリリーク云々の話とWinアプリであることが
何の関係があるんだよ。
Winに限らず Cでは安全なプログラムは作れない
というならまだわかるが。
> PASCAL形呼び出しとかC標準ではサポートしてないよね?
メモリリークが怖くて組めないのか、
それとも単に処理系依存の拡張の話を出して揚げ足を取りたいのか。
>>503 こちらは同意。
程よくハードを意識する意味でも初学者用にCは良いと思うけど そのままCで足踏みする人は今は少ないだろうね まあこのスレの伸びを見ると通過点としてCを通ってきただけの人を含めれば 一番人口の多い言語であることは確かだね 全く知らないという人も少ないだろう(VB厨は除く)
514 :
デフォルトの名無しさん :02/10/31 22:03
げんごでんでんちゅう(ワラ
>>512 >アホでも組めるわ。
>というかメモリリーク云々の話とWinアプリであることが
おおいにある。WINのプログラムはリソースの取得、開放を頻繁に行うので
それらの動作がカプセル化されたC++やデルファイを使うならいざ知らず、
あれを手動でおこなうのは非常にシビアな設計が要求される。
例外処理も必要だ。
winのリソースファイルも手動で書くのか?
断っておくが、「この発言はCだけで組まれたアプリはバグだらけ」という
書き込みに対する発言だ。
そんなバギーな状態でプログラム組めば、バグチェックは大変だと思う。
ダイアログにグラフィック張ってその上に文字が書いてあり、そのフォントも
大きさ色を切り替えて...
こんなアプリCであほでも組めるとはとても思えないのだが...
組んだら苦労するだけで無駄だよ。
コード数が増えるだけ。
必要なコードが増えればバグの可能性もあがる。
貴方ほんとに組んだことあるのか? Cだけで?
どんなアプリ組んだのか教えてくれよ。
非ビジュアルなものでWINアプリ組みましたなんてのは無しだよ。
517 :
デフォルトの名無しさん :02/10/31 22:37
C言語のコードのみで、ビジュアルな開発環境なしにWindowsアプリを作れるのは すごいな。それができないならVBと変わらんのじゃないか。
518 :
デフォルトの名無しさん :02/10/31 22:46
>>516 なるほど。確かにあんたの言ってることは一理あるな。
つまり、Winアプリではないプログラムと比べて
危険性が大きくなるということだよな。
> winのリソースファイルも手動で書くのか?
はあ?
だから、揚げ足を取りたいのかそうでないのか?
たとえばリソースエディタを使ったらアウトだって
言いたいの?
> 貴方ほんとに組んだことあるのか? Cだけで?
> どんなアプリ組んだのか教えてくれよ。
色々あるよ。ジャンル的にわかりやすいところを
挙げれば画像ビューアとかアーカイバとか。
自分が組めないからといって、他人も組めないとは
思わない方がいいんじゃないかな。
(他の言語より管理が難しく生産性も低いというのは大いに認める)
Cは教育用言語です。 BASIC、Pascalを抑えての教育用言語となりました。
521 :
デフォルトの名無しさん :02/10/31 23:03
> 自分が組めないからといって、他人も組めないとは > 思わない方がいいんじゃないかな。
CだけでWinアプリ書くのそんなに大変でもないと思う。 curses使うのと大して変わらない手間だった。
何が悲しくてCでGUIアプリを組まなきゃ菜欄のだ。しかも趣味で。
バグだらけだよ
みんな「はじめてのC」に憧れるんだ。 とは10年前のネタ。
526 :
デフォルトの名無しさん :02/10/31 23:17
CでもOOができるとよく聞きますが どういうことかご存知の方おられませんか?
三輪車でウィリー走行ですか?
528 :
デフォルトの名無しさん :02/10/31 23:19
自分が得意だからといって他人にその言語を押し付けるのはやめようと言ってみるt
529 :
デフォルトの名無しさん :02/10/31 23:22
CでDOSプログラム作る気ないのか。
530 :
デフォルトの名無しさん :02/10/31 23:31
「何を書いてもCで大丈夫な頭イイやつがいる」ことはCを弁護する根拠にならない。 「CよりXXX言語のほうがYYYを書くとき間違えにくい」なら、YYYを書くとき CはXXXより劣った選択だということになる。 で、YYYには組み込みやOSなどを除くほとんど全ての用途があてはまる。 結論: ほとんど全ての用途においてCは劣った選択
>>519 (他の言語より管理が難しく生産性も低いというのは大いに認める
winアプリ製作についてのCの能力については僕もそれがいいたいだけなんだよ。
分かり合えてよかった。....
ましかし 一応突っ込んでおくが、画像ビューア、アーバイバーはまだ
WINのリソースコントロール量でいえば少ないほうだと思うですよ。
だから、「あほでもできる」というのは言いすぎだと思うよ。
532 :
デフォルトの名無しさん :02/10/31 23:33
> 思うですよ どこの方言だ?
激しくガイシュツですが、 情報隠蔽はこんな感じですよね。 これのデメリットは 全く無いと思うのですが、 異論のある人いませんか? a.c static A a; A * getA (); A * getA () { return &a; }
暇なのか?>ALL
そんなあなたにC++。
Windowsの世界の主力がC系になったのは M$がPascalで某島にコテンパンにやられたからに違いない M$のPascalがTurbo Pascalより優れていたら Windowsの主力開発言語はPascal→Object Pascalになっていただろう M$の技術力の無さが現在の混迷を生み出したのだ・・・と言ってみる
>>531 > ましかし 一応突っ込んでおくが、画像ビューア、アーバイバーはまだ
> WINのリソースコントロール量でいえば少ないほうだと思うですよ。
説明しやすいジャンルのものを挙げてみただけなんだが。
Winアプリであることに変わりはないしね。
> だから、「あほでもできる」というのは言いすぎだと思うよ。
ごめん。確かにこれは言いすぎだったと思う。
じゃそろそろ寝ます。おやすみ。
>>533 デメリットは、関数呼び出しの分のコストがかかること。
もしかしてネタだったりするのか…
inline にするとか。
>>533 結局は受け取り側で -> 使わなきゃ逝けないし。
戻り値にキャストとか使ったら簡単に破壊できるし。
ポインタ返したら全然隠蔽にならないと思うけど・・・。
構造体を操作する関数だけを用意して、構造体そのものを外側に全く出さないのが
隠蔽つうもんじゃないの?
つーか C で OO するな C++ にしる。
>>541 そういうレベルの誤りではない気がする。
根本的に違うな。
OOの情報隠蔽と同じ意味であれば。
544 :
デフォルトの名無しさん :02/11/01 13:46
漏れは C++ を使っているが、ファイル入出力は C++ の iostream ではなく C の FILE * を使っている。 処理系にもよるが、iostream は FILE * より 5 〜 20 倍遅い。 いくらバッファ気にしないでいいだオブジェクト指向だ言っても、こんなに 重いのでは話にならない。 学習用に使うのはいいが、実用に値するとは思って欲しくない。
>>544 大変遅いCPUをご使用になってるのですね。
学習用PCじゃなくて実用PCを使ったほうがいいですよ。
どうせ544はVC++付属の遅い奴を使ってんだろう。
ファイルが滅茶苦茶大量にあるのかも知れんぞ。
gcc-2.95.1、標準入力は約 2.5 MB のファイル、ホスティングなので CPU 不明。 #include <iostream> int main() { char x; while (std::cin >> x); return 0; } time 1.981u 0.015s 0:02.00 #include <stdio.h> int main() { while (fgetc (stdin) != EOF) ; return 0; } time 0.127u 0.000s 0:00.13 これが 100 MB くらいになるとシャレにならない重さなんだが。
cstdio
>>548 Linuxなら/proc/cpuinfoを見ろ。
>>549 > FILE*を一生使ってろ。
信者はどんなに糞な実装でもしがみついているのですか?
もう少しまともな実装になれば乗り換えますが何か?
で、みんなそれぞれの環境でパフォーマンス試してみてくれたのか?
>>551 すまん FreeBSD だ。
サーバー業者のページには PentiumIII としか書いていない。
554 :
デフォルトの名無しさん :02/11/01 14:38
>>554 処理量が少ない場合は std::string。楽だしな。
STL と一緒に使う場合は特にそう。
速度が我慢できなくなってきたら (フィーリングで) char*。
最適化したのか? fgetcはマクロだから最適化しないでも展開されるけど、 >>は最適化しないとinline展開されない。
-O3 で最適化してみますた。 1.887u 0.015s 0:01.92 // iostream 0.102u 0.015s 0:00.11 // fgetc あんまし変わらないみたいですた。
558 :
デフォルトの名無しさん :02/11/01 15:33
>553 dmesg
>>558 サンクス
CPU: Pentium III/Pentium III Xeon/Celeron (751.71-MHz 686-class CPU)
real memory = 536608768 (524032K bytes)
ですた。
・・・まさかこれを実用機じゃないとか言わないよね?
言われたら漏れの PC なんか・・・(涙)
FILE*はユーザーがカスタマイズする事ができない。 それに対し、iostreamはユーザーが自由にカスタマイズする事が出来る。
>>560 (゚Д゚)ハァ?
FILE* をラップする処理を書けばいいだけでしょ。
ストリームのカスタマイズと手間はほとんど一緒。
それでも iostream の数倍から十数倍速い。
つーか、漏れでも簡単な処理には iostream 使ってる。
でもそれじゃあ、データ量が増えた時に重くて重くてどうしようもないって
言っている。
>>546 VC6 の iostream は確かに遅いね。
今確かめたんだけど、548 とほぼ同じコードで
3093 ms // iostream
0098 ms // fgetc
ですた。
>>556 > fgetcはマクロだから最適化しないでも展開されるけど、
規格では関数のはずなんだが。
getcと勘違いしてるってことはないか?
>>564 漏れは 552 じゃないが訊きたい。
あんたは 100 MB の標準入力が与えられても iostream で処理するの?
552 は iostream がまともなパフォーマンス出るようになったらいつでも
乗りかえると言ってるんだろう。
FILE* を一生使うなんて言っていない。
なのに理由も述べずにただ 「馬鹿ですか?」 って、あんたはただ煽るだけしか
できないの?
漏れの PC に MinGW/gcc-2.95.2 入れて、-O3 で動かしたら、 3111 ms // iostream 0453 ms // fgetc ・・・561 の VC6 より成績悪いじゃん。何か間違えた?
ここで実装の悪さを愚痴るだけじゃ何も解決しませんが?
>>567 FILE* を使う事によって解決していますが何か?
iostreamはロケールオブジェクトがあるからなあ。 ストリームバッファの読み書き時にコード変換してるのが遅い原因なんじゃないのかね。 知らんけど。
ロケールをどう実装してるのか知らないけど、ただのコード変換にこんなに もたるかなあ。 というか、DOS の FILE* でも "b" と "t" を選べたように、C++ でもロケール 考慮するしないを選べればいいと思うし。
・・・ん? 何か漏れ変な事ほざいた気が・・・。
是非、標準化に協力してくれ。
574 :
デフォルトの名無しさん :02/11/01 19:39
>色々あるよ。ジャンル的にわかりやすいところを >挙げれば画像ビューアとかアーカイバとか。 きっとDLLを使ってるんだと思われw まあ、ウプキボーンってとこでしょ。 アーカイバなんて個人で作っても意味ないしね。 独自のアルゴリズムだったらウプしてくれるだろうけど、 どうせネタなんだろうからホウティ!!
575 :
デフォルトの名無しさん :02/11/01 20:03
>>574 DLLって統合アーカイバとかSusieとかか?
使ってませんが、それが何か関係あるんでしょうか?
お前はサンデープログラマなのどうかしらんが、
とにかく自分を他人に当てはめるのはやめてくれ。
イオストリーム!!
訂正。 × なのどうかしらんが、 ○ なのかどうかしらんが、
スタジオえっちにイオストリームか エロゲvsRPGってところだな
582 :
デフォルトの名無しさん :02/11/02 02:57
>>577 iostreamはCのFILE *より速いという結論ですね。
584 :
デフォルトの名無しさん :02/11/02 03:33
資格取るならC必須ですか?ソフ開取るつもりなんですけど
586 :
デフォルトの名無しさん :02/11/02 03:37
>>577 ありがとう。まじ勉強になった。
ところで、
#include <cstdio>
int main()
{
while (fgetc (stdin) != EOF) ;
return 0;
}
はC++のプログラムだって、オチはなかったんでつか。
588 :
デフォルトの名無しさん :02/11/02 09:42
ソフ開に言語問題は無いんじゃない? ほとんどCの擬似言語は出るらしいけど(w
589 :
デフォルトの名無しさん :02/11/02 10:30
>>588 1が バカなので 気にせんといてください。
>>587 C++ が遅いという話じゃなくて、iostream が遅いという話だろう。
<cstdio> が C++ 流だっていうことだろう…
592 :
デフォルトの名無しさん :02/11/02 11:22
>>441 少し話しズレてすまんが、昔見たイタリアものの洋画で
主人公(高校生くらい?)の友人が、主人公の弱みを握って
それをネタに主人公の母親とヤラせろと彼を脅迫するのがあった。
んで、結局その友人と主人公の母親がセックスする事になり
主人公はその場面をベッド脇でずっと見させられていた。
いやあ、あのシーンでは長い間ヌきまくったっけなあ。
今はそのビデオも行方不明になっちゃったけど、エロゲでも
こういうのありそうで見た事ない。ぜひどこかでやってくれんかな。
(´-`).。oO(少しどころじゃないな。。。)
(´-`).。oO(一体どのスレから誤爆したんだ。。。)
(´-`).。oO(まあ萌えさせてもらったからいいか。。。)
#include <iostream> int main() { char x; while ((x = std::cin.get()) > 0); return 0; } だと超高速だね。>>は書式付きだからね(manipulatorの影響を受ける)。
まさかiostreamがFILE*と同じ速度が出るとでも思ってたの?速度バカ? 2〜8倍程度なら仕方ないのでは?自分で実装してみればわかると思いますが。 それ以上は俺もキツイと思いますけど。
>>598 適所適材を知れ。
iostream が機能盛りだくさんで、実装するとどうしても重くなってしまうのは
知ってるよ。
しかし iostream の諸機能が必要無いのに、C++ の標準だからという理由だけで
無理に使おうとするのは DQN のする事だろう。
仮に FILE* に対する iostream の遅延が 2 倍だとして、1 時間で済む処理が
2 時間かかっても 「仕方ない」 の範囲なのか?
誰も 0.1 秒を 0.05 秒にしたいなんて速度バカな意見は出していない。
C++ が C のスーパーセットであり、必要であればいつでも C の機能を使うことが
できるのが C++ であると思い出せ。
>>600 個人的な意見で恐縮だが、ファイル操作をメインでおこなう目的でもなければ、わざわざ低レベルな関数を持ってくることは無いと思うよ。
C++コンパイラがある環境はおおむねハードの環境も高いと思われ。
ファイルの操作だけで1時間の差がつくものとは何だろうか?、まずそちらを定義しよう。
その目的が頻繁に使われる物であれば、600さんの意見は正しい。
でもあまり必要な物でなければ、ただの「カスタマイズ」にすぎない。
>しかし iostream の諸機能が必要無いのに、
>C++ の標準だからという理由だけで
>無理に使おうとするのは DQN のする事だろう。
ハァ?
俺がどこでそんなことを書いたのでしょうか?
勘違いするのが得意なのですか?
それで偉そうにC++云々について「思い出せ」かい?笑わせんな。
そもそも
>>544 の
>学習用に使うのはいいが、実用に値するとは思って欲しくない。
っていうほうがおかしくないか?
そりゃFILE*に比べれば遅いかもしれないが実用にならないわけじゃない。
速度が必要なプログラムもあればそれほど必要ないプログラムもある。
それをいきなり「実用に値すると思って欲しくない」じゃ、これこそ煽りだろうが。
適材適所を弁えなきゃならないのは
>>544 だと思いますね。
あと最後に一言、あんたしつこいね。
(,, ゚д゚) ┳┳┳┳┳
あのなあ… istream&operator>>(char&)は「書式付入力」だよ。 ただ1バイト読みたいときに使うのは間違い。
あと、>0じゃなくて>=0だよね。
そか。cin>>xはscanf("%c",&x)みたいなもんなのね。 そんなのfgetcと比べんなよ(w
>>602 しつこい様に思えるのは
一人だけじゃないからだという罠。
要するにいつでもiostreamで良いわけだろ。 遅いというのは誤解だったんだから。
611 :
デフォルトの名無しさん :02/11/02 19:29
保守
MLの最後まで読んだか? 結局iostreamでも高速処理が実現したよ
>>613 誰に言ってるの?
それに、バッファでかくしたりするよりcin.get()使えばいいんじゃないの?
615 :
(゚ω゚=) :02/11/05 15:54
唐揚げでないと駄目です。
617 :
デフォルトの名無しさん :02/11/05 23:01
空揚げ
>617 違反。
Cの方言の話で盛り上がる(?)なよw 動いて安全ならとりあえず善しでないの会 副会長は↓の人
>>619 最大限のスピードを出せないとプログラマとは言えませんが何か?
いきなり会が分裂しますた
そういっても結局みんな一度はCを学んでる 漏れもそう
>>620 それがクライアント要求の第1条件ならね。
ネタなのに・・・
>>623 まず 「クライアント」 が出てくる時点でお疲れ様なのだが・・。
趣味でプログラミングする時は常に最大限のスピードを目指したりしないか?
>>625 趣味だけでやってるやつが、こんなあほ議論になぜ酸化するよ。
まさか、仕事云々を2chで話すの?マジ?
>趣味でプログラミングする時は常に最大限のスピードを目指したりしないか? しない。保守性重視派なんで。
630 :
デフォルトの名無しさん :02/11/14 15:52
1は俺の思ってたことそのまま言ってくれた! 有難う!!
何という事だ!! 可哀想な630がいるではないか!!
632 :
デフォルトの名無しさん :02/11/14 21:44
↑ぶらくら
634 :
デフォルトの名無しさん :02/11/14 21:50
WindowsではCでSDKプログラム作ってない奴はだめだめですね。 イベントドリブンとかいって実際にどう動いてるかわかっていないから めちゃくちゃなPGを作っている。そんなやつがオブジェクト指向を本当に理解できるとは思えん。
ネタはもういいよ。
hp.vector.co.jp?
ネタスレでネタはもういいと言われても・・・
どこにネタスレと明記されてるんだろう?
>>642 それもうメジャーだから、見る前に名前で気付け。
644 :
デフォルトの名無しさん :02/11/15 23:56
1に言わせると、プログラムは最新技術でなければ無価値であったか。 Windows95時代からコンピュータを使い始めたが、DOSは古いから学習の価値無しだとは決して 思わずに かなりの学習をしたが、間違いだったのか。 プログラムはビジュアルな開発ツールを使ってWindowsのGUIプログラムを作らなければ無価値 であったか。
646 :
デフォルトの名無しさん :02/11/16 00:12
LSI-C試食版でCのプログラミングしたソースファイルをコンパイル・実行するのが楽しくて たまりません。
>>645 「古くても、いいものはいい。だからC言語もやる意味はある」
くらいの意味だろう
>>648 サンクス。
まぁこのスレでどんなにCがけなされようが
俺はCを勉強し続けるけどね。
ちなみに始めての言語
650 :
デフォルトの名無しさん :02/11/16 00:44
今からやるならCでなくてもいいとは思うな。 新しい言語をおぼえるときはいつもドキドキハァハァするね。 でも大抵やることはかわんねんだよな。 ちまちまイランテマがかからない最近の言語もイイヨ! と毒にも薬にもならんこといってスレを止めてみる
_ , -―-、
, 'ニニニ、::::(0::::::::::ヽ、
 ̄ ̄ヽ'::::::::::::::: ヾ みてごらん
>>1 を あれがJAVA厨だよ
)::: .... \
/ ::::::::::::::::::ヽ
/ :::::::::::::::::|
/ :::::::::::::::::|
/ :::::::::::::::::::|
/ ::::::::::::::::::::|
| :::::::::::::::::::::|
. | :::::::::::::::::::::|
_ , ―-、| /::::::::::::::/::::|
\ヲ'⌒ヽ:| /:::::::::::::::/::::::|
ト`_ ノ::| /:::::::::::::/::::::::|
人;;;;;;;::::;:| |:::::::::::::/::::::::/
/γ `:::::| |::::::::::::/::::::::/
/ ( ヽ :::| |:::::::::/::::::::/ ふーん、なんだか
{ } } ::| |::::::::{::::::::/ ただのはげじじいだね、ばば
| / } ::| .ヽ::::|:::::::/
} { / ::| .ヽノ ::::/
} | ( :λ :::|
( ヽ、 ) ノヽ ::::|
ヽ, ~ 〈 ト、_ | ::::::ヽ、
( ,' ノ | |~7 ::::::::::::::`ヽ、
ヽ,、,、,γ' ノ, -‐W~フ { ト、:::::::::::::::::::ヽ、
∠____ト-┘z__,―' ̄Σ Z  ̄ヽ―-、_ノ
'―z_,┴'~
652 :
デフォルトの名無しさん :02/11/16 01:17
最近のほとんどの言語は少なからずCをベースにしてるから やってもそんではない。 ていうか、まず何か一つソフト作りながら言語覚えろ! しかしまあ、Java覚えた後はCには戻れないな(ワラ
653 :
デフォルトの名無しさん :02/11/16 01:32
ゲーム作る人はCできないと話になりません。
皆さんいくつ位のプログラム言語を使えるのでつか? へたれな僕は一つで精一杯、それすらも自信ありません・・・・・・・ 興味があるのでここに来るのですがその度に自分のへたれさを再確認(泣
いくつぐらいの言語っていっても仕事で無理矢理やらざるおえなかった もんばっかりだかんね。 なんつーか数学知らない人が作った言語は最悪だったな。 インデックスが一からなんてのは趣味でやるにはその時点でさよならなんだが。 あと変数に型がなくて整数部分と少数部分が分けられない奴、これ最強。 媒介変数使うのに一苦労。 コンパイラにまともなのがひとつもねぇってのもある。 いちいち環境変数までいじらんと使えないものとか。 その言語で作ったものすべてに影響をあたえちまうのとか もうみてらんない
656 :
デフォルトの名無しさん :02/11/16 02:11
おっといくつぐらいってね? ちなみにいまのとこむっつぐらいっす
int a[N]; と宣言しながら a[N]という要素はない言語とかもな。 ひどいもんだ。
VB厨の方はお引き取りください
>>656 C++,C,perl,elisp,java,Delphi,VB…とりあえず、好きな順に並べてみた。
XML や SQL とかシェルスクリプトは言語に入るんだろうか…。
660 :
デフォルトの名無しさん :02/11/16 09:51
>>11 >Delphiだって、freeしなきゃメモリリークするじゃん。
閑があって心やさしい方いらっしゃったら
Delphi習得中のものです。
メモリーリークというのはどんな事態ですか?
>>660 メモリを確保して使い終わったら解放する必要が
あるのだけど、ミスで解放されなかったらメモリリークに
なる。
自動的に解放する言語あるので、そういう言語ではメモリリークが
起こらない。
(Delphiは手動で解放するタイプの言語)
×: やらざるおえなかった ○: やらざるを得なかった
663 :
デフォルトの名無しさん :02/11/16 10:30
C++BuilderやDelphiやVB等の開発ツールでWindowsプログラムを作る技術も重要だが、 いくらWindowsプログラムを作るのであっても、ANSI Cのみのプログラム技術はどうでも いいとは思わない。
664 :
デフォルトの名無しさん :02/11/16 10:54
>>661 ありがとうございました。
これを手がかりとして具体例を調べてみます。
>>661 たとえばコンポーネントなら、動的に作成する場合、Createのパラメータで指定したものが親になり
親が削除されると自動的に削除されるしかけがあるから メモリーリークはあまり起きない。
しかし、Objectベースのクラスの場合は、その仕掛けが無いから、必ず自分で解放する必要がある
>>1 C言語は絶対にやれとは言わないがしておいて損は無いと思うぞ。
>>652 その気持ちはわかる。
>>653 JAVAでもDelphiでも可能。
>>654 多ければ良いわけではないが、ひとつは致命的かも。
むしろひとつの言語だけでやってるみたいなので、
その言語が何か知りたい気もする。
>>659 XMLとかも入れだしたら、
副業でしてるHTMLやXHTMLもプラスして良いか?w
シェルスクリプトはそれだけで簡単にプログラム組めるからプログラミング言語 として数えていいと思う。 DOS/NT のバッチも一応数に入れていいと思う。 けど、HTML などのマークアップ言語は決してプログラミング言語ではないと 思うぞ。
×: 簡単に ○: 簡単な
669 :
デフォルトの名無しさん :02/11/16 17:37
では盛り上がりそうなのであげ
じゃXSLは?
671 :
デフォルトの名無しさん :02/11/16 18:36
C言語やらずにC#をいきなりやってるんですが大丈夫でしょうか?
>>671 C と C++ ならともかく、C と C# は全然別の言語です。
674 :
デフォルトの名無しさん :02/11/16 18:45
>>3 あーん、言語比較にしてはスルどい。
どきっとしたよ(=o=;
675 :
デフォルトの名無しさん :02/11/16 19:06
なぜMSはD超えてEじゃなくて、Cを半音上げたんだろう
C#をある程度学習したらCをやった方が良いのでしょうか? それともそのまま.net framework を学習したほうがいいのでしょうか? 意見を伺わせてください。
C# == Ds という事でよろしいか? つーか、拡張子に .cs って書くけど、 Cs じゃあ H と一緒じゃん。
1音あげたらDelphiになっちゃうよ ガリェオまだぁ?
Delphi C# の発音教えて
>>676 なにやりたいかも書かずにそんな質問するなよ。
でるふpぁい しぃしゃぁぷ
>>680 将来、ハッカーになってビッグになりたいです。
そのための言語を教えてください。
#つけたのってやっぱ作った人がアニメに影響されたから?
>>682 プログラミング言語覚えている暇があったらとりあえず7ヶ国語覚えてください
>>688 7ヶ国語といえば普通はG7主要7カ国の母国語を指す
アメリカ語、ドイツ語、フランス語、イギリス語、日本語、イタリア語、カナダ語?
ハッキンするならOSはLINUXになるから言語は自然とC言語 あとは英語と中国語(学校で習うだろ?)ができればOK 皮肉なことにハッカーになるにはC言語なんてろくでもない!!ものを使わないといけない
>C言語なんてろくでもない!!ものを使わないといけない 挫折組なんだね。かわいちょーに。
693 :
デフォルトの名無しさん :02/11/16 20:23
>C言語なんてろくでもない!!ものを使わないといけない
こういうこと言ってる人って、本物のハッカーか
>>692 が
言うようにただのアホかのどっちかなんだよな。
>>691 は
後者っぽいけどね。
髪の毛に白髪増やしながら、 CやC++を覚えたわけだ。 いまさらC#なんてやれっかよ。馬鹿馬鹿しい。 もっとカコイイ言語がやりたいんだよ。
> いまさらC#なんてやれっかよ。馬鹿馬鹿しい。 > もっとカコイイ言語がやりたいんだよ。 挫折組なんだね。かわいちょーに。
>>694 あなたには、「カコイイ言語」 という言語のビジョンがあるわけですね!!
素晴らしいです!!
是非是非、カコイイ言語のコンパイラを作って公開してください!!
698 :
デフォルトの名無しさん :02/11/17 02:27
699 :
デフォルトの名無しさん :02/11/17 04:37
700 :
デフォルトの名無しさん :02/11/17 10:45
>>210 で話しに出てた架空の・・・って話しはCASLでもいいって事ですか?
701 :
デフォルトの名無しさん :02/11/17 11:59
Cはもうおわりだ。 ここももうじき腐海にのまれる。
702 :
デフォルトの名無しさん :02/11/17 12:05
Cを極限まで使いこなして初めて言えることもある。 でもここでCが終わりだと言っているやつはCが出来なかったからたたいてるだけにしか見えない。 自分の馬鹿さ加減にいつか気づいて今の自分を恥ずかしく思うだろう。
>702 C#にもちゃんと手を出してね
windowsでC使うほうがおかしいYO! 環境に応じて選ぼうよ
素直にC++を使えって。
ぱいそんぱいそん!
707 :
デフォルトの名無しさん :02/11/17 16:23
C以外の言語なんて、Cでつくることだってできるわけだし、 結局、どんな言語つかってもCでつくったツールをつかってると考えることもできる
>>707 「C」をアセンブラに変えても成り立つが、(というか、たいていの
まともな言語に変えても成り立つが)、だから何?
やっぱりどんな時もCを基本にして考えてしまうのですか?
710 :
デフォルトの名無しさん :02/11/17 16:38
>>704 , 705
別にC++を否定していない。
でもwindowsでSKDプログラムを作っていない奴がwindowsのメッセージの仕組みをきちんと理解しているとは思えない。
そんな奴がどんな言語使って開発しようがまともなものは作れない。
結局誰でも作れるようなものを作るのが精一杯のクソグラマーにしかなれない。
DelphiはDelphiでつくられています
>>710 そうだね。
アセンブラを知らないPGはキツイもの。
>>711 こういうのいると思った。
では試しに聞いてみる。
その最初のDelphiは何で作った?
714 :
デフォルトの名無しさん :02/11/17 16:53
>>710 んじゃ仕組みとやらを聞こうじゃないか。
早く説明してみれ。
>>714 アフォですか?
Programing Windowsでも自分で読め。
>>714 あと、Advanced Windowも嫁
718 :
デフォルトの名無しさん :02/11/17 17:01
SKDぷろぐらむ?
ネタか? 全てアセンブラで書いているとでも。
Cなんて自分たちが使うのに都合にいいように所々手抜きして作ったものだよ でもね、TCP/IPとOSI、CとPL/Iのように世の中は手を抜いて作ったものが 生き延びていくようにできてるんだ
アセンブラは何で作った?
722 :
デフォルトの名無しさん :02/11/17 17:08
>>710 説明できない(プププ
それはわかっていない証拠。
723 :
デフォルトの名無しさん :02/11/17 17:09
Cはアセンブラ並に処理速度が速いぞ。。。 うまく書けばな(ソースは3倍ぐらいになるけど)
724 :
デフォルトの名無しさん :02/11/17 17:10
>>711 Delphi <- C <- asembly <- machine code <- CPU Design
現実的にはこれ以外あり得ない。
可能性で考えれば機械語からDelphiを作ることさえ出来てしまう。
>>721 最初のアセンブラはマシン語直書き!
ということで最強言語はマシン語となりました。
ご了承ください。
727 :
デフォルトの名無しさん :02/11/17 17:22
>>725 C言語ってB言語を参考に作られたんだろ?
じゃあアセンブラじゃなくてB言語で作られた可能性ってのもあるんじゃねーの?
>>725 コンパイラが1つも存在しなかった時代ならともかく、
ふつーコンパイラは最初クロスで書くだろ。
ボーランドなら最初はTurbo Pascalとかで書いたんじゃないの?
ま、Cかも知れんけど、たいした問題じゃない。
「Cで何でも書ける」ことは何の自慢にもならない。
マジレスするとDelphiを辿るとアッセンブラーからつくられているわけで 途中でCははいってないでやんす そもそもCよりPASCALのほうが古いだろ(MS-CとTurboPASCALで比べるべきなのか?)
その理屈でいくと最強パソコンはTK80になりそうだな ハンドアセンブルはC言語より強いぞw
>>721 俺、昔々i8080のアセンブラをN88-Basicで作ったことあるぞ。
って、そんな話じゃねーか。
>>725 C <- asembly
↑ と ↑ は具体的には何なんですか?
古さ自慢したところで意味があるのか? 何言語で何が出来るかってゆう話だろ。
C++もC#も含めるつもりならCを選ぶなとは言わないが ピュアCは古い流儀の書籍や人間が多いから間違ったまま覚えかねない
735 :
デフォルトの名無しさん :02/11/17 17:53
でもさ、「まとも」って何よ 糞アプリでも、それなりに使われてるのあるし、 C崇拝しなくも、もういいでしょ 21世紀だし
CからじゃなくC++からはじめたほうがいいよ Cに用意されている罠は後の人生に役立たないものばかりだ
737 :
デフォルトの名無しさん :02/11/17 18:02
>>735 崇拝じゃなくて基本だといっているのだが。
別にC++でもいいがメモリを確保することがどんなことか理解できてないアホが多すぎる。
どの言語でもいいが文字列型のクラスを気楽に使っている。背後でどれほど無駄に処理が動いているか考えずにね。
その辺を意識したPGができない奴はろくなものを作れるわけが無い。
まぁCごときは押さえといた方がいいに決まってるが あまりCにどっぷりつかると発想が捻じ曲がるのであまりよろしくないかと。
perlと同じようなもんだな 上級者ほど重病に見えてくる
コンパイラなんてファイル読んでファイル書くだけだろ VBでも作れるだろ
ギコBASICはDelphiからできています
何故どの言語にもどっぷり漬かるのが良くないのかね?
>>742 perlを知らんのか?
あんな意味不明な保守性を考えてないように見えるソースを量産しがちなものはない
PASCALは使う人を育てる言語なのれす
基本を覚えるならC以外の言語にしないと自由に書けるのは便利だが素人には 扱いきれない
747 :
デフォルトの名無しさん :02/11/17 18:24
ここはC言語で挫折した人が慰めあうスレですか?
世の中に出回っているCコンパイラとPASCALコンパイラの CPU毎の数と種類を比較すればどちらにニーズがあるか 一目瞭然だが。 君たちはそれすら解らない負け犬ですか。
まぁWindowsではCはとっくに死滅してるから 議論の余地はないんだけどね。
育てるのはPASCALに任せとけ 実装は貧弱な環境ならasmやC、それなりの環境ならC++と使いわければいいだろ そもそもPASCALはアプリを作るものであってOSの整備はCでやるんだから コンパイラが多いのは当たり前
751 :
デフォルトの名無しさん :02/11/17 18:32
ではVB最高って結論で閉めさせていただきます。
教育用言語としてのPASCALはとっくに終わってるよ。 Javaに対するアドバンテージをageてみなよ。
軽い、小さい
754 :
デフォルトの名無しさん :02/11/17 18:42
>>752 ここでいっているPASCALってdelphiのターボパスカルってやつじゃないのか?
それならJAVAよりもいいものを作れると思うが。
JAVAの方がメリットが少ないとおもう。
755 :
デフォルトの名無しさん :02/11/17 18:43
じゃあCもいつか役目を終える?
教育用ならC++とSTLの使い方だけ覚えときゃいいだろ GUIや方言は後からなんとでもなる(というかはじめからVCとかやると区別つかなくなる)
757 :
デフォルトの名無しさん :02/11/17 18:50
cは軽量、コンパクト まだまだ役目を終了できるほど世間のハードはリッチになってないよ
CはOS無しの環境でも動作できる。 ブートはさすがにアセンブラが必要だが。
759 :
デフォルトの名無しさん :02/11/17 19:03
>>756 それが一番最悪のパターンです。
配列とリスト、ハッシュのメリット、デメリットも理解せずに使っているPGを見ると悲しくなる。
>>758 OS無しってGUI無しのことを指してるつもりか?
>>759 今どきは情報工学の時間に習っちゃうそうですよ
そういうプログラム以前の知識は
>>761 いまどきは情報工学の時間に習っても本質を理解していないから問題かと。
実際に自分で配列やリストを作って試していないから実感として理解できていない。
>>760 OS無しと言ったらOS無しだ。
制御系とかOSそのものやドライバーを作る環境ではあたりまえだ。
開発はもちろんクロスでWinとかUnix上になる。
>>762 まず利用してから作らないと何が良いものか悪いものかわからないかもです
利用することで見る目を養うというメリットがあるです
>>764 Javaユーザー:先進的都会人
Cユーザー:都会の下水配管工
>>763 Cコンパイラが動作するって意味にしかとれねーよ
OS作る言語がOS無しでも動作するもん作れるのはあたりまえだゴルァ
>>766 そうとるのはおまえがアフォなだけ。
つまりPASCALでは事実上無理なことも出来るっつー事。
ちなみに別にコンパイラが対応していればCUIな環境で
クロス開発してもできる。
>>767 よく見ろ、主語が"Cは"になってるだろ
それにPASCALでも組み込みの開発はできる
理屈でできるできないじゃなく実際に存在する
769 :
デフォルトの名無しさん :02/11/17 19:33
>>765 かわいそうにCとpascalだけで盛り上がって無視されてしまったのですね。
ではそろそろCは糞ってことで終了しますか? [ OK ] [ CANCEL ]
>>768 "Cだけ"とか限定して書いてるわけではないだろ。
おまえ見たいのを屁理屈って言うんだよ。
そりゃ組込用でもGCCとかでPASCAL用の環境はあるかもしれないが。
メーカーの純正では今時ないって。
教育はJAVA、組み込みはCという結論がでました アプリは素直にC++で書きましょう
773 :
デフォルトの名無しさん :02/11/17 19:41
PASCAL連呼してる奴もう引退したほうがいいよ(藁
775 :
デフォルトの名無しさん :02/11/17 19:59
>>774 JAVAもね。
CやC++と違ってやはり性能に問題がありすぎてアプリは作れない。
web系でしか使い道がない。あと携帯アプリぐらいか・
C言語まんせー
職業に貴賤なし。Cコーダを馬鹿にしてはいけない。
低脳職業プログラマ死になさいってこった。
780 :
デフォルトの名無しさん :02/11/17 20:59
781 :
デフォルトの名無しさん :02/11/17 21:02
>>777 , 778
低脳だからJAVAやpascalをやるのでは?
Cに挫折した人が最初にやるのがJAVAでそれにも挫折した人がdelphiをはじめるのですが。
(´ー`)y-~
784 :
デフォルトの名無しさん :02/11/17 21:05
>配列とリスト、ハッシュのメリット、デメリットも理解せずに使っているPGを見ると悲しくなる。 確かに。 プログラマーをある一定のラインで区切るとすれば リスト、ハッシュ、バイナリーツリー、クイックソート、 (ヒープソートは実用面からから考えるといらないかも) ライブラリー無しでC言語(別の言語でもいいけど) でコーディングできるかできないかだよね。 他にも、このアルゴリズム(データ構造)はプログラミングできなきゃ バカってのあるかな?
>>1-784 適材適所という言葉は知らないくせに、開発言語の選択ばかりに病的に
こだわる偏執者が集うスレはここですか?
>785 自由ってのを知らないんですね 職業プログラ(省略)
Cのライブラリって機能のみを提供するだけで 便利さを提供してくれないのでイヤン
790 :
デフォルトの名無しさん :02/11/17 21:15
>>785 784の意見はPGとして常識的な知識をもっているかどうかの話だから言語にこだわっているのとは違うと思うが。
すぐ真上にあるんだからそれぐらい読みなよ。
あ〜ほらほらまた飽きもせず出てきたよ、適材適所厨が(ワラ
つまりなんの取り柄もないDelpひ はこの世から消えろって事
>>792 > Delpひ
×
スペルマ違ってるよ。
↓
○
スペル間違ってるよ。
ではそろそろCは糞ってことで終了しますか? [ OK ] [ Hikky ]
797 :
デフォルトの名無しさん :02/11/17 21:26
だから適材適・・・・
こりゃあ次スレが必要だな。
実はみんなC言語嫌いじゃないんだろ。
いや、俺は大嫌いだよ(w
マイナー言語使用者のひがみが充満しているスレですね。
802 :
デフォルトの名無しさん :02/11/17 21:35
俺は全部の言語を使えるが別にいいと思うけどね。
ここは明らかにCの領域ではないのに周りがアフォばっかで 無理やりCを使わされているC嫌いの集うスレです。
805 :
デフォルトの名無しさん :02/11/17 21:40
806 :
デフォルトの名無しさん :02/11/17 21:42
>>784 そんなもんできるに決まってるだろ
そういうレベルの話だったのか?
807 :
デフォルトの名無しさん :02/11/17 21:43
,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,--―'''""`ヽ'  ̄`ヽ、 / ヾ / ~`ヽ / ヽ;: /"""ヾ ヽ / ;:;;:::'''' l /;:;;:::''' \ i / /;:;;:::''' ヽ ヽ | | ヽ | / ;/ ヽ ヽ / ;:;:ヽ ,,,,;;::'''''ヽ | i / ,,,,;;::::::::::::::: __ ヽ ヽ | | " __ :::: '"ゞ'-' | | | |. - '"-ゞ'-' ::::::.. |. | | ;:| ::::::: | :| | ヽ. ( ,-、 ,:‐、 | | | /ヾ.. | | | | __,-'ニニニヽ . | | < 糞言語は糞言語と見抜ける人でないと .. | `、ヽ ヾニ二ン" / | (適切な言語選択は)難しい。 | ヽ\ / | | l `ー-::、_ ,,..'|ヽ./ ヽ. :人 `ー――''''' / ヽ /;:;:;:;;:;:;: _/ `ー-、 ,.-'" \ー-、 ,.-'" \: \ .,.-''" | /. \ ~>、,.-''" | ,,..-‐'''"" ヾ ,.-''"| /――――、/
808 :
デフォルトの名無しさん :02/11/17 21:43
すでにCが古典言語(マイナーとは言わないが)の仲間入りしてるな 藻前らと同じで一線はとっくにはずれてんの
809 :
デフォルトの名無しさん :02/11/17 21:44
C言語のポインタって糞だよね *の使い方が非論理的だよ
810 :
デフォルトの名無しさん :02/11/17 21:45
>>808 JAVAもpascalもメジャーではないのも認めてるよね?
811 :
デフォルトの名無しさん :02/11/17 21:47
>>810 JAVAがメジャーじゃないなんて眼鏡を新調したほうがいいかもね
PASCALだって歴史の教科書にCOBOLと仲良く並んでるよ
>>807 の苦オエッて誰よ?
(マヂれすキボンヌ)
813 :
デフォルトの名無しさん :02/11/17 21:48
>>809 以上、ポインタの使い方に挫折した人の愚痴でした
814 :
デフォルトの名無しさん :02/11/17 21:49
>>811 JAVAの仕事とCの仕事、どちらがたくさんあるかご存知ですか?
816 :
デフォルトの名無しさん :02/11/17 21:50
>>813 挫折しようにもそんなに古臭い機能に頼ってるのはCだけだよ
>>808 GUIのPCアプリしか知らない厨房ハケーン。
818 :
デフォルトの名無しさん :02/11/17 21:53
>>817 またハード屋の登場かな
腐った脳みそがループバックしてんじゃねぇの?
しかしBSDソケットライブラリって何であんなに設計のセンス悪いんだろ。
やっぱCジジイはコンソール命でふか?(藁
822 :
デフォルトの名無しさん :02/11/17 21:56
>>816 c++も使えないお馬鹿さん発見しました。
自分のアフォさを露呈しております。
824 :
デフォルトの名無しさん :02/11/17 21:57
>>821 cをやったことないのですか?
やってからいいましょうね。
糞スレはこのようにして消費されていくのですね。
ハ ゚ス カル 8 2 7げっと
のようですね。
829 :
デフォルトの名無しさん :02/11/17 22:09
結論としてはこのスレの住人はなにを使ってもだめだめだってことだね。 以上、終了です。
Cまんせー 童貞は逝ってよし!
Cを新たに主要言語として(自ら)採用するのはあまり勧められんが、 知っていて損は無いと思うぞ。 糞さ加減を知れば、それをカバーする技量がつくし、 他の言語選択の理由付けにも出来る。 まぁ、これは他の言語を主要源としても同じ事だがな(w つか、まともなPGなら言語になんか拘らんでそ? あくまで道具なんだから。
>つか、まともなPGなら言語になんか拘らんでそ? あくまで道具なんだから。 はぁ?
833 :
デフォルトの名無しさん :02/11/17 22:23
(゚Д゚)ハァ?
834 :
デフォルトの名無しさん :02/11/17 22:25
>>831 cが糞なら他の言語も大して変わらんと思うが。
もしかしてcで大失態を犯してc恐怖症になってしまったのですか?
お気の毒です。
Cが糞とかいってるヤシは手続き型だとオブジェクト指向的に組めないと 思い込んでる人々ですか?
道具には拘れよ 道具自慢ばかりして手入れもしないのは最悪だが
837 :
デフォルトの名無しさん :02/11/17 22:37
>>831 拘っちゃいけないとでも思っていらっしゃいますか?やっぱり。
838 :
デフォルトの名無しさん :02/11/17 22:43
言語にこだわらないのはあくまでも仕事だからじゃないのか? 趣味で作るんなら出来る限り精通してる言語を選ぶと思うが。 俺はMFCは嫌いじゃないが趣味で作るならSDKでつくりたい。作っていることを楽しめるからね。
>>838 趣味の場合、スキルが高い人だと、やっぱりVBなんかは見向きもしませんか?
レヴェルの高い言語を使ってると糞言語を見分ける目を養うことができるよ 今更N88BASICを真面目にやろうとは思わないだろ? 高レヴェルな漏れから見たらC言語もそういう目で見ちまうわけだ
>>839 VBは嫌いじゃないよ。っていってももっぱらエクセルのVBAしか使ってないけど。
842 :
デフォルトの名無しさん :02/11/17 22:50
>>840 高レベルとかっつーか、利用対象が見えてないって感じがするよ、おまえ。
一言でいえば勘違いクン。
本来の目的はプログラムを製作することであるのに 言語を使うことが目的になってる人がいる気がする。 時間が無くて条件さえ合えば生産性の高いVBだって使うのが プロというもんだと思うが。
趣味で本来の目的に必ず合わせなければいけないその理由は? あと2ちゃんねるはプロ云々を語る場所ですか?ムじゃなくてマ逝けば。
いや別に煽る気はなかったんだが、そう取られたのならスマソ。 俺も以前はVB反対派だったが 連れが短期間で結構凄いと思わせることやってくれてから 擁護派になりましたw 俺自身はVB書いたことないです。
>>845 私は 844 ではないが、
普通は趣味でも本来の目的に合わせるもので・・・
貴方の場合は、目的がプログラムそのものだからそういうことになっている訳で、
その意見は少なくとも他人には押し付けないほうがいいかもね。
すくなくとも私はあなたのスタイルを否定しないよ。
でも自分の目的のためにCが必要な人がいるということを忘れないでね。
union zako {
char
>>1 char
>>1 char
>>2 char
>>3 ・
・
・
・
・
char
>>1000 }aho;
お前らなんかこれで十分だ。
趣味は自由であり、人が何をするかに他人が首を突っ込むものではない。 そうでしょう? 自分の考えを趣味の域まで押し付けようとしているのはどちらですか。 よく考えてくださいヽ(´д`)ノ
850 :
デフォルトの名無しさん :02/11/17 23:45
784 :デフォルトの名無しさん :02/11/17 21:05 >配列とリスト、ハッシュのメリット、デメリットも理解せずに使っているPGを見ると悲しくなる。 確かに。 プログラマーをある一定のラインで区切るとすれば リスト、ハッシュ、バイナリーツリー、クイックソート、 (ヒープソートは実用面からから考えるといらないかも) ライブラリー無しでC言語(別の言語でもいいけど) でコーディングできるかできないかだよね。 他にも、このアルゴリズム(データ構造)はプログラミングできなきゃ バカってのあるかな?
それはあなたですよ(IBMの某CM調で)
>>850 それだけ本当に理解して自分でも作れるのならたいていは困らないと思う。
あとはビット演算子ぐらいから。ハフマン符号でもやっておけばいいんじゃない。
どんな言語を使おうが 凄い奴は凄い。 そんな人に私はなりたい・・・。
例えば車は目的地に快適に着く為の 手段 であるが 車に拘ってはいけないとでも?車ヲタクなんてそこらじゅうにいるが? 改造して飾ったりしたものも見かけますが本来の目的と違いますよねぇ。 それともプログラミング言語だけ特別とでもいいたいのですか? それならはっきりとした 理由 をどうぞ。
>>846 批判(袋叩き)を覚悟で書くと、VBのコードは可読性が高いと思う。
(ヘタクソが書いた場合を除く)
Cは経験が浅い人から見ると、暗号文にしか見えないんだが、どうよ?
>>853 まずは困っている人がいたらいっておろおろしてすることからはじめてはどうですか?
857 :
デフォルトの名無しさん :02/11/17 23:57
>>854 駐車場がない場合とか飲酒してる場合などは車は避けるべし!
>>854 このスレに趣味について否定している人は、居ないように見受けるが・・・
仕事云々については何も言っていませんし言う気も無い。
厨房はさっさと寝ろ。
>趣味で本来の目的に必ず合わせなければいけないその理由は? >普通は趣味でも本来の目的に合わせるもので・・・ 理由の回答にはなっていないと言った方がいいですか? それともそんなことは決まっていることでもなく他人に決められるわけでもなく 各々が自由に自分で選ぶべきこと、と言えば理解できますか。 全ては自由のために。 寝る(゚Д゚)
>>855 Pascalの可読性には敵うまい・・・
つーか、素の英語として解釈しても無理が無いように設計されてるからな・・・
>>864 言い過ぎ。Hacker's Dictionaryみろ。
「教育用のオモチャを皆が真剣にとらえすぎるとどうなるかの好例」
>素の英語として解釈しても無理が無いように設計されてる
COBOLerも同じ事いってたな…
VBの生産性の高さ、ポテンシャルの高さは認めよう でも仮にキミが簡単だからという理由で初心者に勧めるのなら納得いかないね アレは自由に出来すぎるからコーディングスタイルが固まってないヤツに やらせると(良書や良師に出会えた幸運な人を除いて)その後の人生を 不幸にするんじゃないのかなぁと他人事ながら(ずっと他人事ならより良いが) 心配になるね
>>865 Cの宣言の構文はけして可読性が高いとは思えないな
(しかも同じ宣言を複数の書き方ができる!!)
パスカルの全てが正しいとは思わないけど
少なくとも宣言に関してはCより良いと思うんだ
begin end はやめて欲すぃ
>>868 どうして? 新しくブロックを作るという事に関して、それくらいのコストを払って丁度いいと思うのだが?
コストを払って丁度いいと言われても、何が丁度いいんだか・・・。 コストを払わなきゃいかんのか?
ブロックなら、条件も一緒に書けて、少なくともどの種類のブロック終端か ひと目で見分けがつく VB のがいいと思うが。
そうだよ。 何をするにもコストがかかる。それくらい払ってくれ
>>871 そこだけ見ればいいと思うけど、VBの場合はブロックの概念と行の概念が混在してるからなあ
869 も 872 も、必要性を感じる明確な理由を書いてくれなかった。 C のように { と } で済むならそれに越した事無いのに。 #define BEGIN { #define END { とか書いてるのかなあ。
いや、#define END { とか書いたら死ねるけどな。
簡単に言うと、C言語の { } は軽すぎる。 例えば、5行スレのように if(flagA){ for(i=0;i<cCNT;i++){prog・・・・ と複数のブロックを入れてしまえる。 だからコーデング規則を別に作って、それを制限する必要があるし、実際そうしてる人が多いだろう。 結局は、軽すぎる為に、コーデング規則という別の重りが必要になってるという事だ。
>>874 C にはもちろん Cのスタイルがある。
当然C言語を使う以上、Cのスタイルで組むよ。
>>876 それはフリーステートメントの話で、ブロックは全然関係無いだろう。
第一 869 と 872 からはそういう話が全く読み取れないが、別の人?
879 :
デフォルトの名無しさん :02/11/18 14:05
干す てぃんぐ
880 :
デフォルトの名無しさん :02/11/18 14:12
784 :デフォルトの名無しさん :02/11/17 21:05 >配列とリスト、ハッシュのメリット、デメリットも理解せずに使っているPGを見ると悲しくなる。 確かに。 プログラマーをある一定のラインで区切るとすれば リスト、ハッシュ、バイナリーツリー、クイックソート、 (ヒープソートは実用面からから考えるといらないかも) ライブラリー無しでC言語(別の言語でもいいけど) でコーディングできるかできないかだよね。 他にも、このアルゴリズム(データ構造)はプログラミングできなきゃ バカってのあるかな?
平気でサイズの2乗に比例するようなコード書いて、・・・パソコン速くなれば全部解決ですよ・・・とかさ いくら速くなったってそれじゃ解決しねぇよ
Q1 □ 配点20・・・ ギコBASICを実装して下さい Q2 □ 配点10・・・ B木を実装して下さい Q3 □ 配点20・・・ 複数の線分を表示し、マウスで線分と端点を動かせるようにして下さい
結局、ブロックを記述する時に払うべきコストとその理由は何だったんだ・・・。
中かっことBEGIN〜ENDの違いのせいでコーディングスタイルが変わる(悪化する)なら それは未熟なだけじゃないかと思いますです どちらがコスト(この場合は時間)を消費するかというと BEGINの場合はBを押してから次にEを押すまでに一瞬間が空きますが タンタタタンと軽快なリズムで打てます。 {の場合はSHIFTが小指でなおかつ先行入力不可なので入力はわずかに 早いながら指の占有時間が意外と長くなってしまいます。 しかし、かっこなどの後はかなりの確立でENTERを入力しますので 実際にはBEGINと{にコストの差はありません ただENDと}の場合は事情が違いまして小指を2連打することになる}に比べて Nの後すみやかにENTERを押せるENDは有利であると言えましょう つまりBEGIN〜ENDと{}では前者のほうがコストが有利である、と言えるのです
左 Shift は薬指 { } は中指 'B は人差し指、'E' は中指、'G' は人差し指、'I' は中指、'N' は人差し指 'E' 'N' 'D' は全て人差し指 Enter は人差し指 ですが何か?
つまり、869 と 872 はタイピングのコストについて言及していたわけか? しかし、「コストをかけるべきだ」 というのが主論だったから話がかみ合わない。
[enter]を人差し指で押してしまうのはアニメの悪影響だな
単に慣れの問題と思われ あとDelphiだとELSE絡みでBEGIN〜ENDの関係が わかりづらいとこもあるのでそれで嫌われてるのでは?
全て人差し指ですが何か?
具体的にコストをかけるべきだというのを説明すると、 例えば自分なら、 条件文を もしaが0だったら 大きく旋回し でなければ 真っ直ぐに動く 。 のように構造化して書くべきで もしaが0だったら { 大きく旋回について細かな実装 } でなければ {真っ直ぐに動く事の細かな実装} 。 のように書くのは、よくないと思う Cならこういう場合、{・・・}のブロックを書くのは非常に楽になっているので、 つい、後者のブロックを書いてしまう、 pascalの場合、 begin ・・ end が見た目に重い事、 引数の無い手続きの () を省ける事 関数内関数が書ける事 から、構造化し易くなっている。 というような簡単な事だ。 そんなに深く突っ込まれるような事じゃない。
893 :
デフォルトの名無しさん :02/11/18 15:04
小括弧 == parenthesis.
>>892 つまり、if 〜 else で処理が分かれる場合は手続きを関数化するべきで、それを
「begin ・・ end が見た目に重い事」 等が促してくれる、という事ね。
869 からそれを読み取るのは至難の技だと思うが、了解した。
しかし、そういう事は C でもする人はちゃんとするし、DQN なら Pascal でも
しないだろう。
ちなみに漏れがイヤなのは、「begin ・・ end が見た目に重い事」 これに尽きる。
>>884 エディタいじって、
Ctrl + [ で begin+(改行)+(タブ)、
Ctrl + ] で (BS)+end
を入力するようにしている私はDQNですか?
>>894 必ず関数化・手続化しろと言ってるんじゃなくて、
どってでも間違いでないような場合に、手続化=構造化する習慣を付ける方がいい
程度に受け取ってくれ
>しかし、そういう事は C でもする人はちゃんとするし、DQN なら Pascal でも
もちろんそうだが、Cだけ使ってると やっぱりCスタイルになる。もちろん自分だってね。
>>896 begin と end を対にして入力する習慣は付きにくいけど
好き好きだからいいんじゃないでしょうか
工夫すればもっと便利になりそうだけど
一発で begin (TAB)| ←ここにカーソル end ってやってた時期もあるのですが、 上から順番に打っていけるほうがカーソル移動の手間が無いので 今の形になりました。
>>899 なるほど工夫を重ねた結果ですね
少なくともDQNではないと認定しますた
902 :
デフォルトの名無しさん :02/11/18 17:35
お前らよく見たら900超えてますよ! 次スレッド立てていいですか?
902 はただ単にスレを立てたいだけなんちゃうかと小一時間・・・
>>881 そういうことを言う人は、資源が有限であるという認識がないものと思われ。
マシンの性能が向上すると言っても、無限大になる訳ではないので、コストは
コストに違いない。
H8でCで組んでます…。芯だほうがいいでしょうか? 今タスク処理とスケジューラの勉強をしています。
906 :
デフォルトの名無しさん :02/11/18 18:26
漠然とした質問ですいませんが CとJAVAってどっちがどのくらい早いですか?
H8ってなんだ?
>>906 本当に漠然とし過ぎ (w
敢えて「早い」という字を使っているところを見ると、開発効率とか完成速度を
問題にしているのだろうか?
それなら、OOに対応しているJavaの方が早いという答えになりそうだが?
>>909 実行速度を問題にするなら、ふつう、「速い」という字を使うんじゃないの?
911 :
デフォルトの名無しさん :02/11/18 19:09
実行速度の方で教えてください
912 :
デフォルトの名無しさん :02/11/18 19:11
C++ is faster than everylanguages!
913 :
デフォルトの名無しさん :02/11/18 19:13
>>910 「速い」と「早い」はそのように使いわけられる傾向があるけど、厳密なものじゃないよ。
基本的に Java より C の方が速い。 ただし C には保護が全く無い。 まあ素人は牛鮭定食でも食ってなさいってこった。
>>913 > 使いわけられる傾向があるけど、厳密なものじゃないよ。
VB.NET でOption Strict を Offにしとけば、CLRが自動変換してくれまつ。
(んな訳ゃねぇ・・・)
>>914 > 牛鮭定食
その定数リテラルのハードコーディングはNG。
環境変数から読み込んで来るところだろ?
>>917 そりゃそうだな。Cの方が言語仕様少ないしな。
しかもJavaの場合はライブラリを含めて、Cの場合はライブラリを含めない
状態で比べたらさらにJavaの方が時間がかかる。
しかし C の場合、それだけだとほとんど何もできないからな。 純粋な情報処理に専念するならともかくだけど。
>>919 > それだけだとほとんど何もできないからな。
そうだね。JavaもJVMが無いと動かないけどね。
そしてJVMって何言語で作られているんだっけ?
Cだと標準ライブラリだけではGUIアプリは作れないってことでしょ。 GUI作るのでなければCで十分だと思うけど。
>>920 > そしてJVMって何言語で作られているんだっけ?
論点をすりかえることでしか反論できないのか(w
>>921 DOS画面のブロック崩し(・∀・)イイよ
>>922 「論点」とか「反論」とか厨房臭さが漂ってて(・∀・)イイ
で、君の論点って一体何?
>>925 なんだ。論点という言い方が気にさわったのか。
話をすりかえることでしか言い訳できないと訂正すれば良いんだな(w
C の場合、それだけだとほとんど何もできないだろ。
>>926 > C の場合、それだけだとほとんど何もできない
で、JavaはJVMが無いと殆ど何も出来無いどころか「動かない」と言う
事実を言っているだけなんですが、何か気に障りました?
別に話をすり替えて言い訳とかしてないよ、事実を言ってるだけ。
>>927 なんだ単に理解力が足りないだけなのか。
C言語で規定されている範囲で出来ることとJavaで規定されている範囲で
出来ることで比べているのですよ。
JVMが無いと出来ないっていうのはコンピュータが無ければC言語は動かないと
言ってるのと同じで比較の範囲外です。
>>924 C 標準ではそれすら作れないはずだが。
オセロがせいぜいだ。
>>928 何だ自分で自分の首を絞めてるアホか
> C言語で規定されている範囲で出来ることとJavaで規定されている範囲で
> 出来ることで比べているのですよ。
CではGUIを規定していません、JavaではGUIを規定してます。
よってCでGUI云々というのは比較の範囲外です。
仮想マシンに依存して何とか動いているどこぞの厨房言語と
比較する事自体が間違いです。
漏れは C 擁護派だが、920=925=927 はアフォなんちゃうかと思う。
ついでに 930 も
>>930 だから、規定の範囲内では C よりも Java の方が出きる事が多いって話だろ。
あんた日常会話でもその調子なのか。
>>927 事実を言ってるんだろ。反論とかじゃなくて。
じゃあ話の筋に関係ないのだから擦り替えてると言われてもしょうがないな。
Java に JVM を含めないで考える香具師がいるとは思わなかった・・・。
>>933 > 規定の範囲内では C よりも Java の方が出きる事が多い
そのかわり、Javaは覚えることが多く、中途半端な厨房プログラマを
作りやすいね。
> あんた日常会話でもその調子なのか。
もうアホかと馬鹿かと、お前は2chで日常会話と同じなのかを小一時間(略
確かJVMってC++で書いてるんで初?
938 :
デフォルトの名無しさん :02/11/18 21:34
あの、、、同じような処理をした場合JAVAとCはどっちが速いんですか?
製作日数+実行時間なら大抵はJAVAのほうが速いんじゃないかな
>>938 あまり意味が無い質問。 具体的に
円周率を千桁桁求めるのにどちらが早く書けるのか?
2^32-1 迄のすべての素数の表を用意する場合ではどうか?
とか絞ってみたら?
>>938 極端な話、処理内容次第では、VBでさえもC++製のアプリと性能に
大差がない場合もある。
SQL文でDBMSを叩く処理とか、APIコールとか。
既存のアプリを使ったほうが速い場合がほとんど
943 :
デフォルトの名無しさん :02/11/18 23:04
784 :デフォルトの名無しさん :02/11/17 21:05 >配列とリスト、ハッシュのメリット、デメリットも理解せずに使っているPGを見ると悲しくなる。 確かに。 プログラマーをある一定のラインで区切るとすれば リスト、ハッシュ、バイナリーツリー、クイックソート、 (ヒープソートは実用面からから考えるといらないかも) ライブラリー無しでC言語(別の言語でもいいけど) でコーディングできるかできないかだよね。 他にも、このアルゴリズム(データ構造)はプログラミングできなきゃ バカってのあるかな?
944 :
プロの逝って良しの1 ◆MvRbZL6NeQ :02/11/18 23:07
固定小数点演算
945 :
デフォルトの名無しさん :02/11/18 23:10
946 :
プロの逝って良しの1 ◆MvRbZL6NeQ :02/11/18 23:11
じゃポインタ
947 :
デフォルトの名無しさん :02/11/18 23:12
それは言語機能だから知っててあたりまえ
doubleでいいんじゃないで済ますなら 全部ライブラリで済む話だ
949 :
デフォルトの名無しさん :02/11/19 00:34
>>948 そんなことは無い。
固定小数点と浮動小数点の違いを知らないバカはだまってろ。
バカじゃないなら、固定小数点と浮動小数点の
メリットとデメリットを書いてみな。
950 :
デフォルトの名無しさん :02/11/19 01:25
プログラミングまじで初心者ですが、 Cからはじめようと思っているのは間違いですか? とりあえずは趣味、というか興味ですが、将来仕事で使うかもしれないです。 まじれす、お願いします。
>>950 間違いかもしれないし、間違いじゃないかもしれない。
短期的目標として(つまり1週間〜1月後くらいに)、何が作りたくて、
長期的目標としてどんな事がしたいか言ってごらん。
今や固定小数点より浮動小数点の方が速かったはず。 精度が荒くていいなら逆転する場合もあるけど。
953 :
デフォルトの名無しさん :02/11/19 01:41
1の言うことなど気にせずに、まずはC言語で、MS-DOSプロンプトから実行する キャラクタモードのプログラムの学習を選んだほうがいい。
MSDOS(つーかWindowsのDOSシェル)のコンソールじゃ デメリット多すぎる。 9x系とNT系の違いでエスケープシーケンスもまともにつかえんし、 日本語もまともに入力できない。
>>953 >MS-DOSプロンプトから実行する
いい加減にWin9x系使うのやめれば?それともWin3.1?
キャラクタモードのプログラムの学習から、ってのは同意だけど、
Cの必要性はあるの?
まぁいきなりイベントドリヴンやオブジェクト指向はどうかと思うけどね。
ただ構造化言語に深入りする前にOOに移行するべきだとは思うけど。
OO言語はたいてい構造化言語ですが…
まぁここではOOしてない構造化言語の事だと理解してくれや。
>今や固定小数点より浮動小数点の方が速かったはず。 >精度が荒くていいなら逆転する場合もあるけど。 んなこたーない。ベクタ型スパコンなら別だが、 今でも整数演算のほうが速いだろ。
959 :
デフォルトの名無しさん :02/11/19 01:56
次スレがあるとしたら、スレタイは 「初心者はC言語を選ばない方がいい」 のほうが良いんじゃないの? 実際、選ばない方が良いのか否かは別として。
次スレ不要
>>951 短期的には何が作りたいっていう明確な目的はないんですが、 長期的には自分でwindowsのアプリケーションのひとつでも 作れたらいいなぁなんて考えてます。 どうでしょう? 抽象的すぎですかね。
962 :
デフォルトの名無しさん :02/11/19 02:07
>>961 C++(VC or BCB),Java,Delphi 辺りからチョイス。
VBはやめといたほうが無難。
>>962 ここではCは批判されてますが、
C++の前にCわかってたらいい、という話をよく聞きますが、
そんな意味でCからはじめるというのはどうなんでしょうか?
C#とRuby以外は全く不要
GUIアプリを趣味でやるだけであれば無理してやらなくていい。 ただ、アルゴリズムとOOPは全く別の概念だから混同しないように。
すんません、OOPって何ですか?
WindowsもC言語で作られている。
オブジェクトオリエンテッドプログラミング オリエンテッドってのは日本語訳すると「指向」らしい。
>>968 なるほど。ありがとうございます。
ということで、特にCからやらなくてもいきなりC++を勉強してもよい
ということでしょうか?
仮にそうだとしても、市販されてるC++の本ってCをある程度知っていることを
前提として書かれているものが多いので、初心者には勉強しにくい気も
するんですが・・・。
>950サン C++ベースでやろう、と心に決めてて、Cから入ってるなら、そんなにCは 詳しくやる必要ないんじゃないかな? 極端な話、C++本で解説してないifやforやwhileの使い方、関数の書式や 変数宣言、struct型の宣言程度さえ覚えれば、C++の初心者本に移行しても 大丈夫かと(移行した方がいいかも?)。 あとは必要に応じてC本も参考にしつつ、C++本で勉強。これで良いと思う。
>>958 Athlon CPU で HDBENCH などの_ベンチマーク値_だと浮動小数点の方が高かったりする。
>>971 でその_ベンチマーク値_と演算速度の関係は?
973 :
デフォルトの名無しさん :02/11/19 02:43
>>969 両方やれよ。言語は一つに絞るとろくなことが無い。
ないね。漏れが知っている例だとそれくらい。 実際にプログラム組んで検証したデータどこかにないかね。
975 :
デフォルトの名無しさん :02/11/19 02:48
>>955 >Cの必要性はあるの?
普通はCだと思うんだがな。Windowsアプリの作り易さに終始するならVBでいいだろうが。
>ただ構造化言語に深入りする前にOOに移行するべきだとは思うけど。
移行するのもいいが、「深入りする前に移行すべき」というほど構造化言語に否定的
なのも変だな。C++をするのであっても、CはCとしての技術もあったほうがいいと思うが。
いきなりC++でもいい。 オライリーのC++実践プログラミングとかはCの知識が無くても読めるようになってる。 古いけどな。
C/C++はいい加減時代遅れ ライブラリ作りにくいし使いにくい駄目言語
978 :
デフォルトの名無しさん :02/11/19 02:59
つーか1000とってみたい
980 :
デフォルトの名無しさん :02/11/19 06:57
>malloc/freeでメモリーリークのおそれがある new、deleteだってあるじゃん。 if(p) delete p;とかやらないかんし、そもそもdeleteとすべきかdelete[]とすべきか 後からいじる奴は悩むし、おまけにnewハンドらーやら訳のわからんものいっぱい考えつきやがって テンプレートと組み合わせるとバグの温床だし。よっぽどmallocとfreeの方がイイや。
>>980 意訳すると、俺は馬鹿だから分かりません。ということですね。
if(p) delete p;・・・アホか。例外処理の利点も知らんのだろうな。
Cは時代おくれなんかじゃありません。
不便なだけです。
984 :
デフォルトの名無しさん :02/11/19 07:59
そうじゃない。 Cは高級言語でありかつ、低レベルなんだ。 高級言語しか知らないVB使いやコボラーにならない為には必須だよ。
Cは柔軟だがその柔らかさゆえ初心者は捕らえどころが無い。
986 :
デフォルトの名無しさん :02/11/19 08:24
とか逝ってるあいだに1000への家運戸田運は恥真っ点だよ! IMEのイキガイイ!
988 :
デフォルトの名無しさん :02/11/19 08:29
次スレまだぁ?
989 :
デフォルトの名無しさん :02/11/19 08:29
エートックだと?ふざけんな! ありゃ楽しい変換してくれねーじゃねーか。
990 :
UBASICER :02/11/19 08:30
昔はCは速いから使ってたけど覚えたかと思ったらC++とやらが出てきて ウザイと思ったよ。
991 :
デフォルトの名無しさん :02/11/19 08:30
今のバージョンのATOKでも多少の入力ミスは直してくれるんだっけ
992 :
デフォルトの名無しさん :02/11/19 08:31
しまった! ジスレのうちあわせなしに1000いっちまうぞ
993 :
デフォルトの名無しさん :02/11/19 08:33
エートックだと大抵日本語になっちまっておもしろくない
994 :
デフォルトの名無しさん :02/11/19 08:38
そうはしま千
次スレなんかいらねーよバカども。
996 :
UBASICER :02/11/19 08:40
>>1 JavaでFlight Simulationなんて書けるのか?
と今さら突っ込んでみる。
997 :
デフォルトの名無しさん :02/11/19 08:41
次スレなんていらねーYO
1001 このスレッドは(以下略
999 :
UBASICER :02/11/19 08:44
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。