C言語なら、俺に聞け! <18>
■ このスレッドは過去ログ倉庫に格納されています
0001きょうはいいテンキーです。日下部陽一
NGNGいろいろな言語を極めたが、一番手になじむのはCだった。
Cのことならぜんてわかるから、疑問な点があったら漏れに聞け。
だが、いちいちFAQに載った質問に応えるほど暇じゃない。
課題丸投げなら別スレにいけ。
・comp.lang.c Frequently Asked Questions
http://www.eskimo.com/~scs/C-faq/top.html
・C FAQ 日本語訳
http://www.catnet.ne.jp/kouno/c_faq/c_faq.html
Cプログラマならこれを買っとけ。
・プログラミング言語C(K&Rと呼べば通だ)
http://www.amazon.co.jp/exec/obidos/ASIN/4320026926/yfcbookshelf-22/250-3950205-1475419
K&Rで挫折するような救いがたいやつはこれでも読め
・作ってわかるCプログラミング(アヒル本と呼べば通だ)
http://dennou.gihyo.co.jp/books/void_c/
http://www.amazon.co.jp/exec/obidos/ASIN/477411328X/249-4698746-2014711
推薦図書/必読書のためのスレッド PART3
http://pc.2ch.net/test/read.cgi/tech/1016722820/
・前スレ C言語なら、俺に聞け! <17>
http://pc.2ch.net/test/read.cgi/tech/1019372139/l50
0459ふか
NGNG未経験は25まで。
俺は大卒の未経験中途で25のとき今のところへ入社。
でもチチャーイ会社だよ。
学生ならちゃんと活動して大手へ行くべし。
0460デフォルトの名無しさん
NGNG〜かしらって使わない?ネット上で。
0461デフォルトの名無しさん
NGNG逝きたいと思っても行けないだろうけど。
0462デフォルトの名無しさん
NGNG学歴は高卒ってことになるよね。しび〜あ〜。
0463デフォルトの名無しさん
NGNG0464デフォルトの名無しさん
NGNG0465デフォルトの名無しさん
NGNG違う。
大学中退
0466ふか
NGNG漏れのまわりは他社も含めて大卒ばかりだYO。
持ち帰り中心の小さなソフトハウスとかならあるのかな?<高卒採用
0467458
NGNG俺も実はよく使う罠
0468デフォルトの名無しさん
NGNG履歴書には高卒って書く。
人に言う時は高卒と中退を使い分け。
0469デフォルトの名無しさん
NGNGぽっかり空いた数年間について聞かれないか?
0470372
NGNGできそうだ・・・・
取りあえず完成したらキレイ書き尚しと・・・
0471デフォルトの名無しさん
NGNG聞かれたときは答えに困るけど、正直に中退してぶらぶらしてましたって言う。
なんかスレと関係なくなってきたので適当に書いてみるか。
#include <string.h>
int main (void) {
char* マジ="寝たい";
loop:
strcat (マジ, "ったら寝たいんだょぅ…");
goto loop;
return マジ;
}
0472デフォルトの名無しさん
NGNGexternをつけなければ他のファイルから参照することはできないですよね?
0473ふか
NGNG今,iStudy中・・・。
0474デフォルトの名無しさん
NGNGそのコード、つっこんでほしいの?
0475デフォルトの名無しさん
NGNG漏れはもうアモバンを飲んだので、寝るのは時間の問題だ・・・
0476デフォルトの名無しさん
NGNGチガイマース
int global_i;
だったらそれは外部的!
0477デフォルトの名無しさん
NGNGそんなに眠いなら寝ろ
0478デフォルトの名無しさん
NGNG0479デフォルトの名無しさん
NGNGえ!?
じゃあ関数みたいにstaticをつけないと他のファイルからも参照できちゃうの?
0480デフォルトの名無しさん
NGNGloop:
strcat (マジ, "ったら寝たいんだょぅ…");
これはいかん。
0481デフォルトの名無しさん
NGNG0482デフォルトの名無しさん
NGNGすっかり勘違いしていたよ。
どうもありがとう!
0483ふか
NGNGextern は必須?
つか意義は?
漏れ,もうだめぽ
0484デフォルトの名無しさん
NGNG0485デフォルトの名無しさん
NGNGCなら関数プロトタイプは無くてもいいはず
0486482
NGNG0487デフォルトの名無しさん
NGNGといってもそもそも入れないだろうし、うっかりゲーム業界なんて入ったら死ぬかも。
0488ふか
NGNG0489デフォルトの名無しさん
NGNG0490デフォルトの名無しさん
NGNG質問なんだけど
C++ の RTTI でクラス ID を分岐させることってできないの?
class_id_type hoge = get_RTTI_type( p);
switch( hoge ) {
case RTTI_class_A: 〜; break;
...
}
こんなやつ。
<typeinfo> ではいちいち
if( dynamic_cast<...> ) ...
if( ... )
を繰り返すのはメンドウだ…
0491デフォルトの名無しさん
NGNG0492デフォルトの名無しさん
NGNG0493ふか
NGNG研修のころは
プロトタイプに変数名必要ない
externは必ずつける
と,教えられたんだ。
んで現場にでて,みんなexternつけてないから,
externはつけなくなっちゃったんだな
0494デフォルトの名無しさん
NGNGそれを言ったらうど(以下略
0495デフォルトの名無しさん
NGNGclassとか言われると手も足も出なくなる自分が情けない。
C++もやらないとだめかな〜
0496デフォルトの名無しさん
NGNGC++はスレ違い。
0497ふか
NGNG翻訳単位ってなんぞ?
0498デフォルトの名無しさん
NGNG0499490
NGNGアンニュイな(以下略・・
0500デフォルトの名無しさん
NGNGコンパイラニ アタエラレル ニュウリョクノ タンイ ヨ,Pre processerノ シュツリョク ネ
0501ふか
NGNGC++はサパーリ。クラスIDってなんぞ?
つかCのスレだからな・・・
0502デフォルトの名無しさん
NGNG案ずるより生むがやすし
やってみそ
0503デフォルトの名無しさん
NGNGらじゃー
あの分厚い本と格闘か(遠い目)
Javaは死滅するって聞いたのでやめておきます。
0504ふか
NGNG#ifdef TYPE_A
int funcA(char*);
#else
int funcA(int);
#endif
みたいな?
0505デフォルトの名無しさん
NGNG0506ふか
NGNGアメリカのプログラマの扱う言語のトップにC++を抜き差って,
Javaが踊り出たそうな。
漏れもJavaはそれほどだが・・・
0507デフォルトの名無しさん
NGNG数で見ちゃダメでふ。
0508デフォルトの名無しさん
NGNG0509ふか
NGNGも少ししたら寝るぽ
0510デフォルトの名無しさん
NGNG0511デフォルトの名無しさん
NGNGまた明日か・・・それまでにbuuがどこまで伸びるやら・・・。
0512デフォルトの名無しさん
NGNGくだらないとはなんだYO!くだらないとHA!
0513ふか
NGNG金融系のJOBについたら運用系の女プログラマとやれるYOと
まわりは逝ってるYO
0514490
NGNGいや、おいらも受け売りなんだけどさ・・
ポインタが指すオブジェクトが派生してて何なのかわからん場合
それを識別する RTTI っていうのがあってたぶん、dynamic_cast
ダウンキャストするために、内部でクラスの情報を持っているらしい。
それがクラスID。
ガイジンさんはこの機構を自分で実装していて
おいらは言語でできないもんだろーか。と思った次第でスワ
gamedev.net っつー、ゲーム屋の集うトコロテン…
っつか、ねむ…。
http://www.gamedev.net/columns/gameengineering/oosm/page3.asp
0515ふか
NGNG練りに練った構造体とモジュール化した関数ぢゃダメですか?
0516デフォルトの名無しさん
NGNGいいな〜
0517ふか
NGNG漏れは製造系のJOBだから関係ないぽ(涙
金融系に逝くならコボルもマスターしておけば,
運用のおねえちゃんに受けがいいと思われ・・・
0518デフォルトの名無しさん
NGNGswitchで使えるような物は得られないんじゃないかなぁ。
独自にクラスのIDを整数で返す仮想関数を実装するしかないのでは。
0519デフォルトの名無しさん
NGNGお、お、おぉ・・・・
Webプログラミング関連はやめてそっちを回ろうかな。
0521ふか
NGNGそうそう,やっぱりこれからは
コボルやピーエルナントカといった汎用機マンセーの時代だYO
0522デフォルトの名無しさん
NGNG0523デフォルトの名無しさん
NGNGこれから回る会社の中に汎用機を主に扱うところがあるの。
こぼるやPL/Iを使っているみたい。
決めた。そこを第一志望にしよう。
0524ふか
NGNGconst char* str="もう寝ます。おやすみなさい\n" ;
void main(){
puts(str);
}
0525デフォルトの名無しさん
NGNG二回改行ですか?
私も寝よう。
0527天然少女
NGNG処理系依存って事なんだけど、どうして処理系によって初期化前の初期値が異なってくるのでしょう?
そこら辺の仕組みを教えて下さい。
0528デフォルトの名無しさん
NGNG処理系依存だったか?
不定では?
0529天然少女
NGNGどうして異なるかが知りたかったんです。
0530デフォルトの名無しさん
NGNG0531デフォルトの名無しさん
NGNGどうしてってANSIが決めなかったから。
javaはゼロ初期化されるらしいけど
0532天然少女
NGNGコンパイラに依存するのかハードウェアに依存するのかも良く分からないんです。
0533デフォルトの名無しさん
NGNGOSに依存すると思う・・・
0534デフォルトの名無しさん
NGNG児童変数はふつうスタックっていう一時的なデータを置く場所に置きます。
そこは、関数の引数や、前に使い終わった変数なんかの値が
そのまま残ってます。
コンピュータは内容をクリアするにも時間がかかるので、一般的に
前に使った物をいちいち消さないんですわ。
それで、初期化しないと新しく作った児童変数の値は
そのゴミの内容になってまう。スタックの使い方はコンピュータや
OS、メモリ状況によって違ってくるのでコトなるんです・・・。
C faq あたりにも載ってるかもしれん・・。
0535天然少女
NGNG仕様でゼロ初期化と決めなかった事自体は構わないんです。
だけど、その不定な値がどのように決定されるか知りたいんです。
変な質問でゴメンなさい。
0536デフォルトの名無しさん
NGNG決めるんじゃなくて残っているものがそのまま使われるんでしょ。
0537デフォルトの名無しさん
NGNG0538デフォルトの名無しさん
NGNGautoキーワードがあるから自動変数でいいかと。
0540デフォルトの名無しさん
NGNG前に使った内容がそのまま残ってるんだよ。
前の人が何かいてたかしらんけど、
だいたい、直前に呼ばれた関数の引数とか、そいつが使ってた自動変数の中身とか、
コンパイラがこっそり演算するのに使ってたデータだとかが消えずに残ってるの。
どのように使われてたかは、コンパイラしか知らない。
コンパイラの知識とアセンブラの知識があれば、大体どのように使われていたかは
推測できるけど、そういうテクは、使っちゃいけないと言うのが最近の決まりです。
Cのスタックってのはね、「書いたら消す」という約束を守らない会社の
ホワイトボードみたいなもんなの。
決まってる訳じゃなくて、まえに誰かが書いたのがそのまま残ってるの。
0541デフォルトの名無しさん
NGNG>>534が言ってるのでだいたいあってます。
0542デフォルトの名無しさん
NGNGまもなく書き換えられるだろうけど。
0543デフォルトの名無しさん
NGNGポインタと言いなはれ
0544デフォルトの名無しさん
NGNGすまん
0545天然少女
NGNGコード書いた人と処理系が違うので、理由を明確に説明してあげたかったんです。
皆さん親切に感謝!
0546デフォルトの名無しさん
NGNGそのコード書いた人失格。
でもコンパイラが教えてくれない?
0547デフォルトの名無しさん
NGNGそういう細かいところに疑問を持つのはいいことだと思いますの。
スタックと児童変数の関係を理解したら、今度は
ヒープと malloc, free や、なぜ児童変数の配列は固定長でなければ
ならないのか、考えてみるとさらに理解が深まりますにょ。。
って、すでに知ってたらごめんなさい、だけど…。
0548デフォルトの名無しさん
NGNGついでに「未初期化の変数を使用した」旨の警告メッセージを
読み飛ばさないように教育しといてね。
警告メッセージは全部つぶすのが基本なんだけど、
そのなかでも普通はエラーにしてもいいんじゃないかっていうレベルの
警告もいくつかあるからね。
0549デフォルトの名無しさん
NGNG警告抑制してつぶしていたりして(w
0550デフォルトの名無しさん
NGNGなるほど…同じ職場ならコーヒー一杯おごってもらえ。
あなたにはその権利がある。かもよ。
0551デフォルトの名無しさん
NGNGgcc src.c >&/dev/nullとか(藁
0552デフォルトの名無しさん
NGNG興味をもつのはいいと思うけど、「じっさいにこーだからだめ」は説明つかないときに反論できないからお薦めしない。
動作が未定義な事は避ける、これが納得できないやつはプログラマ失格だとからだで覚えさせtやれ。
あと、処理系依存はドキュメントでも確認する、できれば避ける、も励行して欲しい。
0553デフォルトの名無しさん
NGNG0554デフォルトの名無しさん
NGNG別に○○少女でなくても丁寧に答えてくれるだろ。
酷い態度でなければ。
0555デフォルトの名無しさん
NGNG0556デフォルトの名無しさん
NGNG今日はNULLあたりでマジになってたのが多かったから
それなりの答えが返って来ただけで
普段だったら、>>527の質問で
「女の子の仕組みを教えて下さい」
って切り返して終わるのがオチと思われ
0557デフォルトの名無しさん
NGNGこのスレは違う。
0558デフォルトの名無しさん
NGNGきっとモーホーなお兄さんが全力で教えてくれるぞ。関係ないことまで。
801板のお姉さんたちでもいい。
■ このスレッドは過去ログ倉庫に格納されています