将来プログラマーになろうと思っている人へ part3
939 :
仕様書無しさん:2008/04/07(月) 17:56:31
つまり
既に確保された"ABCD"がある安全なメモリ番地を、ただ単にtempに入れているだけで初期化とか問題無い
*nと5の関係は文字列の場合とは違うの?
既に確保された(int)5がある安全なメモリ番地を、ただ単にnに入れているだけで初期化とか問題無い???
>>939 void main() {
int *n=5;
char *c="ABCD";
printf("%s %x", c, n);
}
PUSH EBP
MOV EBP,ESP
MOV EAX,5 ; int *n=5;
MOV EDX,test.0040A128 ; char *c="ABCD"
PUSH EAX
PUSH EDX
PUSH test.0040A12D ; ASCII "%s %x"
CALL printf
ADD ESP,0C
POP EBP
RETN
コンパイラはbcc32
>>939 いや、文字列リテラルはまあ特殊だけど、問題はそこじゃないぞ。
それ2行目のtempに*がついてないじゃんよ。
やろうとしているのはこういうことだぞ。
char *temp;
*temp = 'A';
書き込もうとしている先が不定のアドレスってのが問題なわけで、
不定じゃなくても、これがダメなのはわかるでしょう?
int *n = NULL;
*n = 5;
char *temp;
と
*temp = 'A';
のアスタの意味の違いが判ってないんじゃね
やっぱ分かってないのはJava厨なのかね
あいつらには整数も文字列も同じオブジェクトに見えてるんだろう?
小学校からやりなおせ馬鹿ども。俺は小学校のときにポインタなどマスターしたわ。
なんでint *n; *n = 5;の議論になってるんだよ。
948 :
仕様書無しさん:2008/04/07(月) 22:14:44
組込みでもない限りポインタなんかいらねー
車輪の才発明しなくてもいいだろヴォケ!!
>>948 オマエもプログラマやめろ・・・日本の技術力低下の原因。
>>941 文字列リテラルはstaticな記憶クラスな文字配列に相当だったっけか。
内容を書き換えようとすると動作が未定義だか不定になる。
(こういう文字列はreadonly領域に配置されたり、ソース内で同じ文字列リテラルを同じ配列とする最適化を行う目的。)
これでちょっとハマった。
>>948 俺の隣の部屋で仕事してるやつら、ポインタもわからないのにCのコーディングやってやがる。
勉強しないでひたすら残業ばかりしてるその姿勢に惚れてしまう。
joelに今の流れ送った
いつか良い記事になりそうって言われたw
952 :
仕様書無しさん:2008/04/08(火) 00:30:38
問題のポインタ変数を定義してるのはローカルかグローバルか誰かおしえてよw
初期化されなくても問題は無い
GCで回収してくれる
MSのC++はそうだし問題ないだろ
955 :
仕様書無しさん:2008/04/08(火) 00:46:43
コンパイラの機能で救ってもらうなんて情けなさ杉〜
>>955 じゃあ全部2進で書けよ
ASMも使うなよ
お前等にお似合いな言語教えてあげるよ。 べーしっく。
みんなどこまで釣りでどこまで本気なんだ
なかなか粘土でピカチューが作れないんですが
誰かうまく作れる方法知ってますか?
粘土→(桶が飛ぶ)→ぴかちゅう
962 :
仕様書無しさん:2008/04/08(火) 09:41:13
あのー独学でC/C++とVB.NETとMS=BASICを勉強したことがあるんですが。
今度ぷうろグラマーとして就職することに決めましたが。
会社がC言語とVBとJavaで募集してるんですがどの言語で応募したらいいでしょうか?
VBかJavaで迷ってるのですが、どちらの方が将来性があるでしょうか?
全部できるって書いて応募
964 :
仕様書無しさん:2008/04/08(火) 10:06:49
>>963 あっそうか?でも求人票は言語別に募集してるから、
とりあえず、どれで応募したらよかんべでしょうか?
javaのが良いと思うよ。
arm(atomの出現でわからないが)が10から
正式にjavaをネイティブ動作サポートしてるからね
966 :
仕様書無しさん:2008/04/08(火) 10:42:31
将来性ではJavaの方が上なんですかね?
最近携帯電話を久しぶりに機種変してJavaアプリのゲームをやって
Javaの進化に驚いてます。
しかし、僕は挫折しやすい正確なので、プログラミングとしては楽な方を取りたいのです。
事実、C++のとき、クラスのポインタで頭が混乱して挫折しました。
JavaとVB.NETはどちらが楽にプログラミングできますか?
ちなみに僕は文系大学卒業ですが、情報処理系の講義も受けています。
派遣常駐って
派遣元の会社の力関係があるって聞いたけど本当ですか?
>>966 サーバサイドや携帯アプリならJava
クライアント側なら.net
それはさておき、ポインタぐらいは(ry
969 :
仕様書無しさん:2008/04/08(火) 16:25:01
>>968 C言語はやったことがあって基礎的なポインタそのものはわかるんだけど。
ポインタを応用したクラスのオブジェクトだったかなんだかに*が二つも三つもついてると
わけがわからなくなる。
で、結局さっきハローワークにいってVBプログラマの方に応募してきた。
JavaはHelloWorldしかしらないし、VB.netは基礎を一通りやってるし。
Javaの方が応募者が多かったので。
まあ、採用される気があんまりしないのだが。
アスタリスク二つや三つで混乱するなら言語仕様を復習した方が良い。
971 :
仕様書無しさん:2008/04/08(火) 17:20:46
コンパイラの善意の解釈(おそらくポインタ定義してから値を代入でもコンパイルヮが解釈してくれる)
でやるのがダメなのに、アセンブラは学ぶに足りないとか普段言ってるのはどういう了見なんだ。
クォンパイルヮ任せにしてはいけない!
なら
アセンブラも必修だろ。
972 :
仕様書無しさん:2008/04/08(火) 19:33:13
純粋なオブジェクト志向にはポインタやアセンブラは邪魔だろうと思うのだが。
オブジェクトに2重3重に参照だかポインタだか忘れたが、つけるのは、
BASICのGOTO文の多用によるスパゲッティプログラムみたいな気持ち悪さがある。
プログラムとしてあまり美しくないと思うのだがどうよ?
ポインタを理解できないアホは、
どうせオブジェクトの参照カウンタも理解できないアホだ
オブジェクト指向なんて役に立たないよ。
と勉強から逃げる無能が言う
>>972 オブジェクト指向もポインタも道具に過ぎない
977 :
仕様書無しさん:2008/04/08(火) 22:04:04
>>976 道具に過ぎないが。道具にも古くて役に立たないものと
新しくて使い方を覚えないといけないものがあるだろう。
オブジェクト指向を有用に扱えない無能こそが役に立たないという結論
>>977 オブジェクト指向は別に崇高なものでもなんでもない
純粋なオブジェクト指向とか台詞は言語に振り回されてる証拠
980 :
仕様書無しさん:2008/04/08(火) 22:27:28
>>979 オブジェクト指向が崇高だとは言ってない。
ただ、今後の傾向として、低水準な言語技術と高水準の言語技術との
乖離が激しくなるのは間違いない。
底辺にあるマシン語やアセンブラやポインタは残り続けるだろうが。
その上に乗っかってる高水準な言語技術はどんどん上に行って、
抽象的になっていくはずだ。
982 :
仕様書無しさん:2008/04/08(火) 23:25:01
983 :
仕様書無しさん:2008/04/09(水) 00:32:23
ポインターすら理解出来ないアホにクラスが理解できるとは到底思えないんですがちがうか?
システムで用意されたクラスを使わされているだけでオブジェクト指向を語るなんで恥ずかしいマネよく出来るよな。
ポインタなんて概念は使わなくていいと
世界中のJavaスクールでは言われているぞ
ポインタは邪悪でソフトウェア工学に悪影響しか
与えないってね
それを逆手にとってバカにするJなんて卒業生が
いたなぁととある国々ではバカにされている。
それぐらいポインタなんて不要で害悪以外の何者
でもないのさ
あんまり安易にそういわれると、
ポインタのアイデアがいけないのか、ポインタが一般人には難しすぎるのか、
ポインタのシンタックスがいけないのか問い詰めたくなるわ。
宣言と使用が一致させられている、って覚えれば難しいものではないけれど。
確かにポインタと一言で言ってもいろんな側面があるしな
例えばJavaにもポインタはある!って一生懸命主張する人もいる
Javaの参照は概念的にはポインタにかなり近いものであることは
間違いないわけだし
987 :
仕様書無しさん:2008/04/09(水) 01:31:41
ポインタなんて嫌がらせでしかつかわねー世
どの言語で?