1 :仕様書無しさん2010/09/19(日) 00:43:38
だそうだ。

42 名前: 仕様書無しさん Mail: sage 投稿日: 2010/09/18(土) 23:00:04
型 = ソケットとプラグの形状
ポインタ変数 = 延長コード

・延長コードは、電源と、電気を使う機器を間接的に繋ぐもの。
・延長コードは、電源や機材から引き出す事も可能。
・延長コードを介することで、データを他の部屋に渡すのが容易になる。
 (電源も機器も持ちまわる必要が無い)
・延長コードから電力を得る事は可能だが、先が繋がっていなければ当然電気は来ない。
 延長コードはあくまで何処にささってるかの情報しか持っていない。
 電源を供給するのはあくまでその先にあるもの。
・延長コードは、初期状態では得体の知れない電源に刺さってて、
 下手につなぐと機器が壊れるから、安全の為にまず抜く(0を代入)のが望ましい。

47 名前: 仕様書無しさん Mail: sage 投稿日: 2010/09/18(土) 23:57:46
だからなんで余計わかりにくくするたとえを持ってくるのか
それが本気でわかりやすいと思ってるんだろうか

51 名前: 仕様書無しさん Mail: sage 投稿日: 2010/09/19(日) 00:38:36
>47
そう思うなら、例えなくても良いから図解してみてくれ。
3 :仕様書無しさん2010/09/19(日) 01:02:37
VBで言うところのByRefみたいなもん?>ポインタ
4 :仕様書無しさん2010/09/19(日) 01:06:17
>3
それは『参照変数』
参照変数だとかならずその変数は別の何かと連動してるでしょ
別の何かと連動していない状態になりうるのがポインタ
まず準備として、別の何かと連動させてから、その値をあつかわないといけない
ここで『別の何か』はその場であたらしく作ったものでもいい
5 :仕様書無しさん2010/09/19(日) 02:48:50
ポインタが必要ない言語が多いのに覚えるべきと騒ぎ回る奴がいらない
6 :仕様書無しさん2010/09/19(日) 03:51:54
覚える覚えない以前にこの程度が理解できないヤツは向いてないって話じゃねえの
7 :仕様書無しさん2010/09/19(日) 04:11:24
エンジンの燃費制御の仕組みが解らない奴は運転手やるな
みたいな暴論だろ
14 :仕様書無しさん2010/09/19(日) 07:30:25
>>7
C言語ならポインタ解んないってのは、標識の意味わかんねってくらいじゃないか?
ちょっといっしょに仕事したくないな。
9 :仕様書無しさん2010/09/19(日) 05:12:00
何も言わず去ろうかと思ったけど、別の例えを思い付いたので
専用スレでもあることだしリトライ。


変数(メモリ) … 紙 (あるいは書類)
データ … 紙に書かれた内容
型 … 紙や書類の規格(あるいは書式)
ポインタ … 全ての紙に自動で付く通し番号 (これもデータの一種)
ポインタ変数 … ↑の通し番号専用の紙 (これも紙の一種。普通の紙とは規格が違うだけ)
配列 … 同一規格の紙の束
構造体 … 規格の異なる紙の組み合わせ(の規格)

値渡し = (関数が持ってる紙に)内容を書き写す
ポインタ渡し = (関数が持ってる紙に)通し番号を紙に書き写す
参照渡し = 紙をそのまま渡す。


こんな何のヒネリも無い、そのまんまな例えを出し直すのもどうかと思いましたが、
>1みたいな、捻り過ぎで余計分かり辛い下手な例えを放置しておけないので…
批判やバッシングは素直に受ける(明示的に求められるか、説明以外ではレスしない)ので
遠慮せずどうぞ。
24 :仕様書無しさん2010/09/19(日) 10:03:17
>>9
紙っていきなりなんなんだよっ
なんで紙なのか意味がわからん。

>ポインタ … 全ての紙に自動で付く通し番号 (これもデータの一種)

宝くじの事か?
48 :仕様書無しさん2010/09/20(月) 09:30:56
>>42
すまんね、俺が立てた。
だけど、俺はポインタは全然関係ない。
>>9のために立てた。
10 :仕様書無しさん2010/09/19(日) 05:13:44
解ってない奴ほど例えたがるよなw
例えた方の奴しか理解してないから
11 :仕様書無しさん2010/09/19(日) 06:31:06
ポインタは熟練プログラマでも脆弱性を作りだしてしまうほど危険だから、近年の言語からは排除されているのであって、難しいからではない。
概念としては、ポインタよりも参照の方が難しい。
12 :仕様書無しさん2010/09/19(日) 06:58:30
1よりは9のが比較的マシだけど
やっぱり元々より分かり辛くなってる点は変わらないね
元々のものよりスマートにできなきゃ例える意味はないよ
15 :仕様書無しさん2010/09/19(日) 08:58:32
標識なんてifやforのレベル
16 :仕様書無しさん2010/09/19(日) 09:00:02
>>15
if, forは、まさに、if, forのレベルだろ。
19 :仕様書無しさん2010/09/19(日) 09:11:31
>>15
ifやforはハンドルとかアクセルのレベルだろ。
使えなかったらプログラムらしいものすら作れないぞ。
21 :仕様書無しさん2010/09/19(日) 09:30:27
Javaではオブジェクトを指す変数は全部ポインタのようなものだぞ。

全部ポインタだからわざわざポインタだと明示しないだけで。
22 :仕様書無しさん2010/09/19(日) 09:38:34
メジャーな言語でポインタつかいまくるのはC/C++言語ぐらいしかないが、ポインタがよくわからないやつはマとしては問題外。
23 :仕様書無しさん2010/09/19(日) 10:02:42
>21
正しくは、ポインタは参照の一種で、C系の言語だけ(?)が
参照とポインタを別扱いしてるに過ぎない。
26 :仕様書無しさん2010/09/19(日) 10:26:40
>24
>何で紙なのか
「例え」とは、「相手が良く知ってる物事になぞらえて説明する事」ですが、
「誰でも知ってそう」なもので、ポインタ他を巧くなぞらえる事ができそうな物として
真っ先に思い付いたのが紙その他だったから、です。
27 :仕様書無しさん2010/09/19(日) 10:38:28
>>26
紙に書き間違えたら破いて捨てるっってこと?
シュレッダーにかけたらもうその紙には書けないよね?

つまり紙=メモリっておかしくね?
28 :仕様書無しさん2010/09/19(日) 10:46:54
普通は箱が例えに出されるよね。
固有の番号がふってある箱の中に番号の書いてある札が入っていて
その札の番号が書いてある箱の中身はみたいな感じで。
30 :仕様書無しさん2010/09/19(日) 10:57:55
メモリが箱でデータが紙。
一つの箱には一枚の札しか入らない。
メモリに値を書き込むのを箱に番号札を入れるのに例える。
32 :仕様書無しさん2010/09/19(日) 11:04:17
コンパイルが通る可能性があるかないかが違うんじゃないかな。
33 :仕様書無しさん2010/09/19(日) 11:29:00
問1
int i=1 と i=1 の違いを答えよ。

問2
char *str = "test" と *str = "test" の違いを答えよ。
35 :仕様書無しさん2010/09/19(日) 11:37:19
>>33
わかりません
教えて
37 :仕様書無しさん2010/09/19(日) 13:35:42
>>33
なんか関係あんの?
書き込むスレ、間違えてねぇ?

どっちも初期化と代入で違う。
問2の2つ目は、char **str;
34 :仕様書無しさん2010/09/19(日) 11:33:31
こう例えれば良いんじゃないかな。
箱に番号札を入れる → 指定したコンデンサに電荷を充電/放電する
箱から番号札を出す → 指定したコンデンサの電圧を測る
36 :仕様書無しさん2010/09/19(日) 11:39:12
ていうかポインタなんてどうでも良くね?
全部変数にしときゃいいじゃん。わかりやすくて。
38 :仕様書無しさん2010/09/19(日) 17:01:33
>27
鉛筆と消しゴムという便利な物があります。

>36
「ポインタ」はデータの一種、「変数」はデータを格納する容器です。
「ポインタ変数」を指して「ポインタ」と呼ぶ事はよくありますが、
厳密には両者は区別するべきです。
39 :仕様書無しさん2010/09/19(日) 21:45:43
ポインタが理解出来ないプログラマがいると言う時点で理解出来ん。
40 :仕様書無しさん2010/09/20(月) 00:44:36
ポインタポインタ言うけどメモリポインタの事だろ要するに
そこの区別つけないでポインタが(笑)とか言ってる奴は単なるバカ
43 :仕様書無しさん2010/09/20(月) 02:20:39
>>40
いや、普通はCのポインタだと思うが、何の区別?
42 :仕様書無しさん2010/09/20(月) 02:12:31
こういうスレを立てる奴はポインタを最近ちょっと覚えたので
煽りたくて仕方ない奴
44 :仕様書無しさん2010/09/20(月) 02:50:57
Cのポインタってなんだよw
Cのポインタには何種類かあってそのうちメモリポインタの話だろ?って事だろ
45 :仕様書無しさん2010/09/20(月) 05:44:27
>>44
「メモリポインタ」でないポインタって何?

どんなポインタも、何らかのメモリのアドレスを指すと言うのに
47 :仕様書無しさん2010/09/20(月) 06:57:58
>>45
えっ
49 :仕様書無しさん2010/09/20(月) 09:53:57
>>44
Cのポインタじゃ分かりづらいか。
C言語の規格票で定義されているポインタだ。

その種類は強いて言えば型か値かが曖昧に使われてるぐらいだし、
少なくともX3010にメモリポインタなんて言葉は出てこない。


>>45
Cインタプリタの実装で変数のアドレス(&で返る値)が
配列のインデックスな処理系があったと思う。
何だったか忘れたけど一応「ANSI準拠」って
書いてあったよーな。
50 :仕様書無しさん2010/09/20(月) 10:11:38
>>45
関数ポインタ
51 :仕様書無しさん2010/09/20(月) 10:29:22
誰か>>50の翻訳頼む。
53 :仕様書無しさん2010/09/20(月) 10:35:30
>>49が一番見当外れだろ。
354 :仕様書無しさん2011/09/05(月) 21:02:54.04
>>45
ファイルポインタ。FILE型へのポインタだからファイルポインタってあれを呼んでるんじゃないぞ。
355 :仕様書無しさん2011/09/05(月) 23:09:01.08
>>354
ポインタは全部メモリーのどこかを指してるんだよw
つうか、ファイル型の構造体がその先にあるはずだからって事でファイルポインタと呼んでいるだけ。
実際そこにはNULLアドレスがあってもなw
46 :仕様書無しさん2010/09/20(月) 05:52:16
アドレスを指すってのは変だな
アドレスが格納されていると言うべきか
52 :仕様書無しさん2010/09/20(月) 10:34:02
>40 = >44 = >47 = >50 かな?
だとしたらそうとう恥ずかしい奴だな。
54 :仕様書無しさん2010/09/20(月) 16:26:27
ttp://en.wikipedia.org/wiki/Pointer_(computing)より

>A memory pointer (or just pointer) is a primitive,
>the value of which is intended to be used as a memory address;

だそうで。この定義だと関数ポインタもメモリポインタ。
やっぱりメモリポインタでないポインタなんて無いんだね。
59 :仕様書無しさん2010/09/20(月) 17:29:09
Cにポインタは必須だが、ポインタと言えばCというのは完全な間違い。
あとポインタと言えばメモリのことというのも間違い。
60 :仕様書無しさん2010/09/20(月) 23:46:58
ポインタはメモリだよ。

例えばメモリマップトI/O。
これはメモリにI/Oをマップしているから
I/Oがメモリのように見える。
つまり、メモリ
62 :仕様書無しさん2010/09/21(火) 01:27:08
>>60
えーと?
「一見メモリのように見えるものは全てメモリである」
と言ってるってことであってる?
61 :仕様書無しさん2010/09/21(火) 01:01:19
普及前に訳者が指示子とかの訳語作っちゃえば良かったのにな。
そしたら変な解釈も少なかったかも
63 :仕様書無しさん2010/09/21(火) 22:01:59
Cから始めたときはいくら本読んでも理解できなかったけど
8086アセンブラやってたら鮮明に理解できたな。
Cソースをアセンブラに展開したときのコードが頭に浮ぶぐらいだったし。
ようするに、別の物に置き換える例えほどわかりにくいもんはないってこった
64 :仕様書無しさん2010/09/22(水) 00:08:14
>48
今更ですが、タイトルはもうちょっと大人し目にして欲しかった。

>60
ポインタ≠メモリ
ポインタ≒メモリアドレス

ただし、例えばCであればポインタに+1すると、
アドレスは型に応じた分だけ増えますね?
つまり厳密には ポインタ≠メモリアドレス だと分かるかと思います。

>63
例えってのは物事を教えたり覚えたりするのに、正規の道を歩まず
脇道をショートカットするようなものだから、覚え辛いのはあるかも。
ですが脇道を通らざるを得ない人も居るし、脇道の法が分かり易いって人も居ますから
やっぱり良い例えは必要だと思いますよ。
脇道ばっかり薦めるのはアレですが。
65 :仕様書無しさん2010/09/22(水) 13:21:27
ポインタが理解できないんじゃなくて、ポインタを扱うときの演算子の
優先順位や結合方向を理解してないだけじゃない?
66 :仕様書無しさん2010/09/24(金) 19:55:40
>44 :名前は開発中のものです。 [↓] :2010/09/24(金) 19:51:08 ID:lAYv494o0 (20/20) [PC]
>ポインタAを20に変更するように指示すれば、
>変数aも20に変更される。
>
>変数aを30に変更するように指示すれば、
>ポインタAも30に変更される。
>
>なんだが、だったらポインタなんていらないじゃん!
>って思うかも知れないが、
>C言語のプログラムは・・というか、プログラムというものを引数という返し値というものを持っています。
>
>ifでいう真が1で、偽が0。
>
>これが引数(返し値)
>
>この返し値をポインタに入れるようにすれば、
>すべて丸く収まる。
>
>int a=10;
>
>この場合、10が値
>その返し値は、ポインタに格納しよう。
>
>このようにすれば、ポインタを表示するようにすれば、
>引数が表示される。
67 :仕様書無しさん2010/09/24(金) 22:37:59
酷いなコレ。
どこのコピペ?
68 :仕様書無しさん2010/09/24(金) 23:24:42
>>67 同人3DRPGでググれ
75 :仕様書無しさん2010/09/25(土) 19:07:05
>>68
thx.
他の所も思いの他酷かった。
69 :仕様書無しさん2010/09/24(金) 23:53:03
稀に見る汚いコピペだな、読む気がしない。
誰か3行に要約してくれ。
70 :仕様書無しさん2010/09/25(土) 00:12:55
ポインタ云々の前に、まず日本語の文章としておかしすぎるw
71 :仕様書無しさん2010/09/25(土) 09:21:12
とりあえず6502でいいからアセンブラ書いてみ。
全部ポインタの概念使うから。

個人的にはポインタとlambda算法を理解してないヤツとは一緒に仕事はしたくねぇ。
お荷物なのが明白だからさ。
76 :仕様書無しさん2010/09/25(土) 22:14:49
でも今20歳代のプログラマってスタックオーバーフローとかしたことないだろうな、たぶん。
77 :仕様書無しさん2010/09/25(土) 22:16:53
>>76
そんなわけない。
79 :仕様書無しさん2010/09/26(日) 12:36:44
>>76
無限再帰すればすぐにスタックオーバーフローする。
80 :仕様書無しさん2010/09/27(月) 18:37:51
>>76
×スタックオーバーフローとかしたことない
○スタックオーバーフローだと気付かない
81 :仕様書無しさん2010/09/27(月) 19:13:15
>>76 メモリなんてあるだけ使うだろ
82 :仕様書無しさん2010/09/27(月) 20:35:01
>>81
君だけは意味分かってない。
83 :仕様書無しさん2010/09/28(火) 19:37:11
>>79
「無限」は不可能。
安易に無限を使うな、と。そもそも可算無限なのか、非可算無限なのか?
いずれにせよその無限に達する前に他の要因で止まるか暴走すると
思われるが。
84 :仕様書無しさん2010/09/28(火) 21:46:42
>>83 も微妙に分かってなくね?
89 :仕様書無しさん2010/09/28(火) 23:35:34
>>84
微妙にというよりかなりが適切
91 :仕様書無しさん2010/09/29(水) 23:21:38
>>89
だよな
元の話(無限再帰)なんて単なるバグ、初歩的な設計ミスを揶揄してるだけなのに。

それこそ『スタックオーバーフローとかした(見た)ことない』ゆとりプログラマーなんだろう
78 :仕様書無しさん2010/09/25(土) 23:47:54
ヒープ:(積もり積もった)山
スタック:(積み重ねられた)山
85 :仕様書無しさん2010/09/28(火) 22:13:36
再帰を使うと戻り番地をスタックに積み続けるから
あっという間に自分の記憶域をつぶして暴走する

割り込みベクタまで無事に生存してたらリセット掛かってくれるかもね
86 :仕様書無しさん2010/09/28(火) 23:12:02
最近のOSなら普通に止まると思うが。
87 :仕様書無しさん2010/09/28(火) 23:16:36
>>86
ポインタ大好きな組み込み屋ではないか?
88 :仕様書無しさん2010/09/28(火) 23:21:46
無限ループって言うだろ、普通に。
スタックオーバーフローして止まるにしても、だ。
92 :仕様書無しさん2010/10/02(土) 14:16:05
どんなプロでも、バグ作ったことはあるわけで、
スタックオーバーフローしてないのはありえないわけさ。

それはミスしたらスタックオーバーフローが起こるような
たとえば再帰するコードを書いたことがない素人なわけ。
93 :仕様書無しさん2010/10/02(土) 14:45:05
最近のOSはメモリ保護機能があるからって意味で書いたんだけど
94 :仕様書無しさん2010/10/02(土) 18:32:43
メモリ保護機能がOSにあろうがなかろうが、
スタックオーバーフロー起こすようなプログラムは
ただのバグでしかないし、実行してもかならず止まる。
(昔と違うのは、その後の処理がOS上でどう扱われるかだけ)

だから昔とか最近とか、結局あまり関係ないんだよ
素人乙
95 :仕様書無しさん2010/10/02(土) 18:49:31
俺はバグなんて一回も作ったことないが。

さて素人はどっちかどうかね。
98 :仕様書無しさん2010/10/02(土) 22:39:30
すごいな、>>95。どうやってるんだ?
101 :仕様書無しさん2010/10/03(日) 08:29:26
>>95は伝説のウィザードだぞ敬礼しろ
96 :仕様書無しさん2010/10/02(土) 19:30:19
そうだな
バグじゃなくて仕様だからな
現代の技術では実現できなかっただけだ
292 :仕様書無しさん2010/12/06(月) 19:56:32
>>96
ただ単にプログラム組んだことないだけだろ
99 :仕様書無しさん2010/10/02(土) 23:12:28
バグが一度もないだなんて、ホントすごいな
どうやったらそんな風になれるんだ?
102 :仕様書無しさん2010/10/03(日) 14:29:02
患者の死に一度も立ち会ったことがない、とか言っちゃう某漫画の外科医()と同じですね
まさに伝説の存在
104 :仕様書無しさん2010/10/03(日) 19:59:37
ポインター(Pointer) は、「ポインティング(指し示す)」を行って獲物の位置を人間に知らせる鳥猟犬の総称。
「ポインティング」とは、獲物の前方に立ち止まって、姿勢を低くして鼻先を突き出し、片足をあげるポーズのことである。
さらにポインターは、人間の命令を受けて草むらに飛びこみ、獲物を飛び立たせることで、主人の射撃を助ける。
性格は仕事を離れると、温厚、家族に甘えさえする。
種類は英系ポインター、米系ポインターに大きく分けられている。
108 :仕様書無しさん2010/10/04(月) 22:45:31
JIS用語で長音記号書かないって決めてるだけで、ポインターって表記で通じるし、合ってるだろ。
110 :仕様書無しさん2010/10/05(火) 08:37:30
関数引数なにそれって人が入ってきたから、
ポインタがわからないぐらいどうってことないって思えてきた……。
むやみやたらとクビを切るのはイクナイ!!って思ってた時期が僕にもありました……。
111 :仕様書無しさん2010/10/05(火) 08:59:43
引数がわからないって…… そいつプログラム組んだことあるのか……?
116 :仕様書無しさん2010/10/06(水) 02:54:51
>>111
DirectXでゲームを作ったらしい。
研修2日目で何もできないことがバレた。
そしてその埋め合わせをやってる最中。
さっさとクビ切って派遣でもなんでも呼べばいいのに、
正社員だしかわいそうだからってことで飼うことになってる。

もう疲れたよママン……。
115 :仕様書無しさん2010/10/05(火) 18:38:51
使わないで済むように組めるなら、それに越したことはないよ。
117 :仕様書無しさん2010/10/06(水) 03:07:59
14日以内なら解雇予告無しにクビ切れるよ?
面接時の自己申告とスキルがあまりに違うなら正当な理由になる。
もっとも、また求人に金かけるとなるとバカらしくなりますが。。
118 :仕様書無しさん2010/10/07(木) 08:34:41
というか研修期間中なら何ヶ月経ってようと切れるんじゃね?
引数がわからないなんてレベルでプログラマで就職しようとするのが間違いだろ。
無職で1日中勉強できる環境なら、2週間もあれば勉強用の本読み終わるだろ、サンプルソース打ち込む時間含めても。
それすらやらないで会社にくるなんて、最低限の向上心も無いんだと判断するぞ。
122 :仕様書無しさん2010/10/10(日) 14:03:15
理解できない奴なんているの?
専門学校や大学で学んだ奴は入社前に習得している。
そうでない奴も入社前には独学で習得しておくのが当たり前。
それ以外の奴も、新人向けの研修で叩き込まれるのが当たり前。
ポインタを理解できない奴は、そこから先はほとんど理解できないので、
続けられないのを悟って辞めていくし。
123 :仕様書無しさん2010/10/10(日) 15:16:16
>>122
いるんだよ。
構造体と共用体の違いも理解できないやつもいるんだよ。
124 :仕様書無しさん2010/10/10(日) 15:39:05
共用体は知らなくてもそれほど困らないな
構造体と混同して覚えてるくらいなら忘れちゃって欲しい
129 :仕様書無しさん2010/10/11(月) 03:05:55
>>124 共用体は俺も何のために使うのか理解できなくて
覚えて無かったけど、ビットフィールドの便利さに目覚めたらなくては為らない状態
125 :仕様書無しさん2010/10/10(日) 19:26:38
昔、ポインタを理解できるかできないかはどうも生得的なものっぽいっていう話を何かで見たな
それが事実なら、例え話とかで教えようっていうのがそもそも無理なんじゃないか
127 :仕様書無しさん2010/10/10(日) 20:38:02
どうしても理解できない人には、本質的に
アセンブラっぽい作業をやらせるしかない

static char V[999999];

とか用意して、

・変数はV[0]〜V[999998]のみを使用してプログラミングすること
・自作の関数は一切作らないこと
・サブルーチンが欲しかったらラベルを使ってジャンプさせること

というのはどうか?
まあ、かえって混乱するかもしれんが
128 :仕様書無しさん2010/10/10(日) 22:30:55
>>127
メモリダンプ解析させる
130 :仕様書無しさん2010/10/11(月) 11:17:31
俺もアクションゲーム自作したときにビットフィールドでコントローラ入力のログとったな。
過去300フレームくらいのログとるのに、1フレームの1ボタンについてbooleanひとつずつ使ってたら
バカみたいにメモリ食っちゃうだろう。
でもビットフィールドって無闇に使うと混乱をまねくと思う、
初期設計で「ここはビットフィールドにするべき」ってところを決めておかないと。
131 :仕様書無しさん2010/10/11(月) 12:41:33
>>130
ビットフィールドって、コンパイラによってMSBから詰め込むのかLSBから詰め込むのかそれともシャッフルしちゃうのか決まって無くない?
しかもエンデアンの件とかあって、とってもハード仕様書のI/Oポートにあわせるのがやり辛いよな。
132 :仕様書無しさん2010/10/11(月) 13:04:31
>>131
そのためのpragmaですよ。
133 :仕様書無しさん2010/10/11(月) 13:08:07
昔、日立のチップのサンプルコードはビットフィールドだった気がするな。
でも if(data&HOGEBIT){} でやっちゃう俺。
134 :仕様書無しさん2010/10/11(月) 13:13:42
マスクビットで判定する方が楽だよな。
書き換えも、
foo &= ~HOGEBIT;
foo |= HOGEBIT;
とかやっちゃう。
135 :仕様書無しさん2010/10/11(月) 17:07:04
bitfieldで定義すると、ビットの位置を入れ替えたり削除したりしても
ソースコードの変更範囲が小さいからいいんだよ。

マスクで定義すると1ビット削除して右詰めにしようとしたとき
マスクの値を全部書き直さなきゃならん。

多少のオーバーヘッドがあってもビットフィールドを使うべきと思う理由はそこ
136 :仕様書無しさん2010/10/11(月) 18:04:38
>>135
マスクのdefineなんてシフト計算でやるだろ。
#define Bit0 (2<<0)
#define Bit1 (2<<1)
#define Bit2 (2<<2)
#define Bit3 (2<<3)
ってな。
137 :仕様書無しさん2010/10/11(月) 18:33:34
マスクの名前付けがきにいらねぇ・・・
普通0,1,2ってつけないだろ
143 :仕様書無しさん2010/10/14(木) 21:06:45
#defineは順序関係ないでしょ
144 :仕様書無しさん2010/10/14(木) 22:20:50
>>143
えっ?
146 :仕様書無しさん2010/10/15(金) 09:11:25
defineは全部大文字がスタンダードじゃないのか
エラーにはならんだろうが
147 :仕様書無しさん2010/10/16(土) 03:46:53
>146
そのルールは本来「定数」(オブジェクト形式のマクロ)のばやい限定かと。

マクロ関数(関数形式のマクロ)には本来適用する必要が無い。
というかむしろ適用すべきじゃない。
関数とマクロ関数の見分けが付く事に必要性やメリットがほとんど無い。
むしろ関数とマクロ関数を呼び出し側に影響を与えず置換できないとか、
それが原因で命名規則の運用がグダグダになるとか、デメリットのが多い。
148 :仕様書無しさん2010/10/16(土) 21:38:57
#define MAKURO_KANSUU_MOKEKEPIROPIRO(x) (/*ここにいろんな処理があると思いねえ*/.)
こんな感じで良いんじゃないの?
149 :仕様書無しさん2010/10/16(土) 22:53:37
>148
「MAKURO_KANSUU_」とか付けてるけど、
マクロ関数であると明示する目的は?
147に書いてある事分かりますか?
152 :仕様書無しさん2010/10/17(日) 02:11:01
>147
じゃ逆に、マクロじゃなくてもconstな変数は全部大文字とかの目印があるべきだろうか……?
153 :仕様書無しさん2010/10/17(日) 06:54:44
円周率のPIとか(普通は自分で定義しないだろうけど)と入力専用の引数を、
どちらも「constな変数」だからと同じルールで縛るのは阿呆の所業だよね。
文法的・構文的な基準だけで命名規則を考えるのは止めた方が良いと思うよ。

そのconstな変数を読み手にどう解釈させたいか、が
全部大文字化すべきかどうかの答えかと。

ちなみに読み手に意図通り解釈させられるのが良いコードだと思うんよ。
誤解させると言う手段も込みでね。
166 :仕様書無しさん2010/10/18(月) 22:21:00
>だからさー、文法・構文的に基く命名規則そのものを否定してるんじゃ無いっての。
>それが最善であるケースなら、そーいう命名規則も悪くないと思うよ。
なんだ、そういうことか。
だが、>>153を読む限りでは、そのような意見は こちらには伝わらない。
そのような意見を書きたかったら
「文法・構文だけを基準にするような行為は、時と場所を選んで行おう」
と書くべき。


>漏れが止めた方が良いと言ってるのは、あくまで「文法・構文だけを基準にする」こと。
だから、その書き方では こちらには伝わらない。
その書き方では、いつ如何なるときも全面的に禁止しているように見えるから。
「ただし、時と場合による」という例外を設けた書き方には見えない。


>普遍的な基準は存在すると思うけどね。
普遍的な「基準」は存在しても、そのための普遍的な「手法」は無い。
156 :仕様書無しさん2010/10/17(日) 23:31:26
>154-155
「読み手に意図通り解釈させる」のはプログラムに限らず、文書全般に共通する最も基本的な命題だと思いますが。
誤解されるような文書を良しとする理由があるとでも?
157 :仕様書無しさん2010/10/17(日) 23:53:41
>>156
読み手に意図通り解釈させるためには何をすべきか、という問題に答えは無い
158 :仕様書無しさん2010/10/18(月) 00:39:52
「こういうコーディング規約にそって書いてます」って説明が必要なのはダメなソースだろうな
159 :仕様書無しさん2010/10/18(月) 01:01:02
読み手にわかりづらい特殊なコードには、たいていコメントつけるんじゃない?
ついてない奴もあるけど、コードをずーっと追ってって最後の最後でやっとわかるってケースもままある
160 :仕様書無しさん2010/10/18(月) 01:17:58
>157
だからこそ
>153「文法的・構文的な基準だけで命名規則を考えるのは止めた方が良いと思うよ。」

流れ読んでます?
161 :仕様書無しさん2010/10/18(月) 18:42:20
>>160
そのような意見さえも、時と場合による
だから答えは無い
162 :仕様書無しさん2010/10/18(月) 20:57:37
「時と場合による」からこそ「文法的・構文的な基準だけで命名規則を考えるのは止めた方が良い」
163 :仕様書無しさん2010/10/18(月) 21:18:46
へっぽこプログラマのオレが体で覚えたのは
プログラムが落ちるのはたいてい領域外参照か解放漏れ
164 :仕様書無しさん2010/10/18(月) 21:20:37
「時と場合による」とはすなわち
文法的・構文的な基準だけで命名規則を考えるのが
良い場合もあるということ

時と場合によらない普遍的な手法は無い
165 :仕様書無しさん2010/10/18(月) 21:52:49
>164
だからさー、文法・構文的に基く命名規則そのものを否定してるんじゃ無いっての。
それが最善であるケースなら、そーいう命名規則も悪くないと思うよ。
漏れが止めた方が良いと言ってるのは、あくまで「文法・構文だけを基準にする」こと。

>時と場合によらない普遍的な手法は無い
普遍的な基準は存在すると思うけどね。
そのソースを読む奴(書き手自身を含む)の事を考えるべき、ってのが。
これを基準とするべきじゃないケースがあるなら教えて欲しいもんだ。
167 :仕様書無しさん2010/10/18(月) 23:22:43
>その書き方では、いつ如何なるときも全面的に禁止しているように見えるから。
>「ただし、時と場合による」という例外を設けた書き方には見えない。

「〜な基準『だけ』で〜するのは止めた方が良い」と書いてあった時、
「その他の基準」として「時と場合」が当てはまらないと読み取る方もどうかと。
(「〜な基準」に「時と場合」が合致するならともかく)
168 :仕様書無しさん2010/10/19(火) 01:59:27
君さ、コミュニケーション能力低すぎ。
周囲の人間とちゃんと意志疎通できてる?
170 :仕様書無しさん2010/10/19(火) 21:37:13
>168
「分からない事は確認しろ」と言われた経験は?
171 :仕様書無しさん2010/10/19(火) 22:19:12
ポインタを理解できないレベルの人をプログラマと言うのは、
ピアノで演奏のできない人をピアニストと言うのと同じ。
誰だってピアノで音を出すことだけならできるが、
それだけではとてもピアニストを名乗れないだろう。
172 :仕様書無しさん2010/10/19(火) 23:50:57
>171
ポインタが理解できなくとも、ちゃんと動くコードが書けるなら、
楽譜を読めず、ピアノの仕組みが理解できなくても、
ちゃんとピアノを弾けるのと同じでは。

まぁ現実にそんな奴が居るかと言えば「さぁ?」だけど。
174 :仕様書無しさん2010/10/20(水) 03:06:27
ポインタはそんな難しくないよ
わかってしまえば何がわからないのか分からなくなるレベル
少なくともピアニストになるよりはるかに簡単
175 :仕様書無しさん2010/10/20(水) 22:20:55
理解できない人がいるのが不思議。
ポインタは図を書いてみれば簡単に理解できるものではないの?
177 :仕様書無しさん2010/10/21(木) 00:37:43
スレタイも流れも無視して
C言語なら関数型マクロと関数の見分けはつく方がいいという意見に一票。
副作用のある引数を渡すと挙動が変わる可能性があるから。
178 :仕様書無しさん2010/10/21(木) 01:21:48
1. int *a;
2. int* b;

3. *b = *a;

1.、2.の*と、3.の*は意味が違うのに、
同じ*を使うから紛らわしくなる。
他の記号を使うわけにはいかなかったのか。
179 :仕様書無しさん2010/10/21(木) 02:06:19
メンバ呼出の演算子が . と -> で分かれてるのはなんでそう設計したんだろうな
面倒なだけだと思うんだが
180 :仕様書無しさん2010/10/21(木) 02:29:04
C++における関数ポインタの有用性について簡潔に説明せよ。(20点)
182 :仕様書無しさん2010/10/21(木) 20:08:43
>>180
便利
181 :仕様書無しさん2010/10/21(木) 06:09:15
ポインタを理解していると思っている人は、Cパズルブックを一読しよう。
本当に理解しているなら、それほど難しいわけではないが。
183 :仕様書無しさん2010/10/21(木) 20:28:41
>179
「ー>」を使わず、「.」だけで書いてみればわかるかと。
「.」は「*」より優先される所がミソ。

※演算子の優先順位を変えることで解決、としなかった理由は忘れた。
185 :仕様書無しさん2010/10/21(木) 21:31:42
>>183
そういう話はまさに
>※演算子の優先順位を変えることで解決、としなかった理由は忘れた。
ココに集約される。
184 :仕様書無しさん2010/10/21(木) 21:04:12

中国の無法を報道できないマスコミはもういらない

無法者の中国と、それを報道しない在日マスコミ
ttp://www.youtube.com/watch?v=IdxMQwrAIQI
186 :仕様書無しさん2010/10/22(金) 00:18:36
>>184
こんなスレまで出張お疲れさん
189 :仕様書無しさん2010/10/22(金) 21:34:08
>187
後置きだと
 p* = 0;
を ↓のようにtypoして嵌る奴が多発しそうな予感。
 p = 0;
 p*=0;
195 :仕様書無しさん2010/10/23(土) 10:23:29
>>189
それより、後置きじゃあ、掛け算になってるジャマイカ
196 :仕様書無しさん2010/10/24(日) 00:30:29
>>190
> 昔の-=演算子
> foo =- 1;

どこのパラレルワールドの話か知らんが、当時「-1」は、どうやって代入
していたんだ?「foo =0-1;」とかか?

>>195
半角スペースを入れると問題解決できると本気で思っているんジャマイカ?
たぶん ...

p * = 0;
p* = 0;
p*= 0;
p *=0;

とか、違うコードになるとでも思っているんだろう。
198 :仕様書無しさん2010/10/24(日) 09:00:09
>>196
ウチのvisual studioでは

int x = 0;
x *= 2;
x * = 2;//構文エラー

になる。「*=」と「* =」が違うコードだと認識される。
190 :仕様書無しさん2010/10/22(金) 21:58:59
そういえば、-と=の減算代入演算子でtypoしまくってたらしいから今の形になったんだって
昔の-=演算子
foo =- 1;

typo
foo = -1;

現在
foo -= 1;
191 :仕様書無しさん2010/10/23(土) 01:32:08
C言語では、基本的に空白は無視するから、
typoとか以前にコンパイラが判別できなくね?
192 :仕様書無しさん2010/10/23(土) 02:47:56
>191
以下のコードを動かして確認すれ。

 int a = 2;
 int *p = &a;
 int b = a / *p; /* */;
193 :仕様書無しさん2010/10/23(土) 02:52:36
>>192
俺゛か間違っていた。
194 :仕様書無しさん2010/10/23(土) 03:14:06
それは例としてどうかと
foo = bar+-++baz; /* bar + (-(++baz)) */
foo = bar + - + + baz; /* bar + (-(+(+baz))) */
ならわかるが
コンパイラは、トークンとして成り立つ最も長い文字の並びを1つのトークンと認識する

あなたの予想に反して、この式は評価されているでしょうか
199 :仕様書無しさん2010/10/24(日) 13:52:50
間にスペース入ってれば、当然、*と=の二つのトークンに分割されるよね。
空白があっても繋げて*=として解釈する処理系ってあるんだ?
200 :仕様書無しさん2010/10/24(日) 16:42:44
1==1

1 = = 1
203 :仕様書無しさん2010/10/24(日) 18:24:24
>>200

     ∩___∩     /゙ミヽ、,,___,,/゙ヽ
     | 丿     ヽ    i ノ       `ヽ'
    /  ○   ○ |    / `(○)  (○)´i、  先生助けてっ!、
    | U  ( _●_)  ミ  彡,U ミ(__,▼_)彡ミ   演算子ちゃんが息をしてないのっっ!!
   彡、    |∪| ,,/   ,へ、,   |∪|  /゙
   /  ヽ  ヽノ  ヾ_,,..,,,,_ /  '  ヽノ `/´ ヽ
   |      ヽ  ./ ,' 3  `ヽーっ   /    |
   │   ヾ    ヾl   ⊃ ⌒_つ ソ      │
   │    \__`'ー-⊃⊂'''''"__,,,ノ   |


     ∩___∩            /゙ミヽ、,,___,,/゙ヽ
     | 丿     ヽ           i ノ       `ヽ'
    /  ○   ○ |           / `(○)  (○)´i、
    | U  ( _●_)  ミ         彡,U ミ(__,▼_)彡ミ
   彡、    |∪| ,,/          ,へ、,   |∪|  /゙
   /  ヽ  ヽノ  ヾ_,,..,,,,_         / '  ヽノ `/´ ヽ
   |      ヽ  ./ ,' 3 /;|      /`ヽーっ    /   |
   │   ヾ   ヾl  ⊃|;';;|      |  ⌒_つ ソ    │
   │    \__`'ー-⊃ノ       ヽ⊂'''''"__,,,ノ   |
              ` ̄´           ` ̄´
201 :仕様書無しさん2010/10/24(日) 16:54:54
それ以前に、プロポーショナルフォント使ってると、特に記号なんか入ると、スペースが見辛いよ。
なんとかしてくれよこの文法。
205 :仕様書無しさん2010/10/25(月) 00:23:16
>>201
フォントはProggyCleanTTSZ以外使うな。
207 :仕様書無しさん2010/10/25(月) 01:10:23
M+ MN Type-1限定で代用品として使用する事を許可する。
が、美しくないのでオススメはできない。
繰り返す、美しくないのでオススメはできない。
215 :仕様書無しさん2010/10/29(金) 23:38:11
標準で入ってるOSはねえよ
ぐぐればすぐわかるだろうけど
216 :仕様書無しさん2010/10/30(土) 02:04:29
スラッシュゼロを採用していないフォントを使ってはいけない。
217 :仕様書無しさん2010/10/30(土) 12:47:30
ちなみに、スラッシュゼロとは
0 ← これのこと。
220 :仕様書無しさん2010/10/30(土) 13:37:25
>>217
あれ? 俺の環境だと只の0と同じに見えるぞw
221 :仕様書無しさん2010/10/30(土) 13:50:50
>>220
だから只の0だろ? お前もそう書いてるじゃん。
218 :仕様書無しさん2010/10/30(土) 12:51:10
>216
ポイント(点)が入っているゼロがあることを理解できないプログラマはもういらない

とか言っちゃうよ。
223 :仕様書無しさん2010/10/31(日) 01:19:48
>>218
ポイントゼロはスラッシュゼロに対して視認性が圧倒的に劣る。
無いよりはマシだが、スラッシュゼロより優先して選ぶべき理由は何もない。
ポインタを理解できないプログラマはスラッシュゼロ以外のフォントを使う。
224 :仕様書無しさん2010/10/31(日) 10:34:24
Oと0と区別が難しいフォントは使うなってのなら分かる。
ついでに言えばlと1とか、Iとlとかな。
228 :仕様書無しさん2010/10/31(日) 18:19:27
マカーはアホ揃いだから、寝ぼけ眼で確認しても紛らわしくない表記ができるフォントを選ぶべきところでも、
見た目が美しいといったズレた視点でフォントを決定する。ダメ出しされると「このフォントは目が疲れにくい」と嘘をつく。
スラッシュゼロでないフォント、プロポーショナルフォントを選ぶ奴は、アホのマカーと同レベルだ。
229 :仕様書無しさん2010/10/31(日) 18:38:33
つうか、Macにも色々なフォトがあってだな。
もうめどくせえから相手にしたくもねえw
230 :仕様書無しさん2010/10/31(日) 19:14:41
漢字talkの大阪フォントはスラッシュゼロだったぞ
あの9ポイントビットマップは神だと思う
231 :仕様書無しさん2010/10/31(日) 22:17:49
今時は、IDE使うことが多いから、その手の間違いは発生しにくい。
232 :仕様書無しさん2010/10/31(日) 23:10:11
だがマカーは口をそろえてこう言う。
「カクカクしたビットマップフォントは糞。美しいアウトラインフォントを使うべき。」
233 :仕様書無しさん2010/10/31(日) 23:37:47
アウトラインフォントとフォントデザインによる可読性は別次元の話。
一緒くたにすんな貧乏人
234 :仕様書無しさん2010/11/01(月) 00:18:08
関税で高かっただけのものを性能がいいから高いと勘違いして買ってた成金は黙っとけ。
235 :仕様書無しさん2010/11/04(木) 21:57:31
デバッグって、9割以上「間違い探し」なんだよな。
週刊誌とかの懸賞でよくある間違い探しが得意な奴は、PGに向いてる鴨。
236 :仕様書無しさん2010/11/04(木) 23:12:08
PHP書いてるときはそう思うけど、まともに型付してる言語ならそんなに間違い探しゲームにはならんと思うが。
237 :仕様書無しさん2010/11/05(金) 00:04:24
>236
開放漏れやタイミングに起因するようなバグは、
型付け機能じゃ防止できないと思うけど。
238 :仕様書無しさん2010/11/05(金) 00:28:41
バグ潰しって、結構野生の感みたいな物が必要だからな。
99%の理論と1%のひらめき みたいな。
239 :仕様書無しさん2010/11/05(金) 01:16:34
>237
開放漏れはまだしも、実行タイミングに起因するバグは、
>235のいう「間違い探し」とは別種だと思うぞ。
240 :仕様書無しさん2010/11/05(金) 01:47:01
>239
タイミングが問題であると特定するまでの過程は、間違い探しに近いと思うけど。
この手の問題は動かして探すより、地道にコード追う方が確実な事もよくあるし。
241 :仕様書無しさん2010/11/06(土) 00:20:25
昔、IBMがやってた適性検査って、まさに間違い探しに近かった。
図形・記号だったり、言語的だったりするけど。

スレ違いに成ってきたので話を戻すけど、ポインタ、再帰、λ計算
が理解できないPGは要らないと思う。出来なくても他の点数で
合格できてしまう基本情報以下の試験は無意味だとも思う。
242 :仕様書無しさん2010/11/06(土) 10:21:44
ポインタや再帰が理解できないって何なの?
何か簡単なサンプルコードを、1ステップずつ追っていけば理解できることじゃない。
理解できないのではなく、理解しようとしていないだけだと思う。
243 :仕様書無しさん2010/11/06(土) 10:26:34
>>242
Cパズルブック全問正解できるなら言ってもいい。
244 :仕様書無しさん2010/11/06(土) 12:53:19
Cパズルブックってナンダロウと思って検索して適当に
書評サイト見たらボロクソの評価されてた
245 :仕様書無しさん2010/11/06(土) 13:14:43
Cパズルブックをけなす奴は、C言語完璧だと思っていたのに、全然できなかったやつだとおもってほぼ間違いない。
C言語やポインタの理解を深めるには良書。
246 :仕様書無しさん2010/11/06(土) 17:21:10
>C言語は初心者にとっては、きわめて分かりづらいところの多い、
>頭を悩ます言語です。このC言語の性質を利用というか悪用して、
>パズルとしてしまった本です。
>趣旨はそうだったのですが、本のできは非常に悪く、こんなものを
>「パズル」といわれると、ニコリに申し訳がたちません。パズルは
>もっと高等かつ高貴なもので、重箱の隅を突っつくようなことばか
>りに終始しているのは、パズルを冒涜しているとしか言えません。
>この本は、C言語の学習にはまったく役に立ちません。数あるCの
>本の中で一番役に立たない本でしょう。パズルとして極めて低級で
>あるだけでなく、Cとしての程度も低いです。要するに、読んでも
>害にしかならない最悪の本です。

酷すぎるw
247 :仕様書無しさん2010/11/06(土) 17:27:59
たしかに酷いな。事実に基づく記述がなく、印象操作に終始してる。
248 :仕様書無しさん2010/11/06(土) 18:16:30
ここまで酷いと逆にどんな問題が書いてあるのか気になるが、取り寄せる程でもないしな…
250 :仕様書無しさん2010/11/06(土) 19:43:08
このパズルができたら、より優れたモノが出来るってこと?
251 :仕様書無しさん2010/11/06(土) 20:09:42
>>250
できない奴はポインタを理解できていない。
253 :仕様書無しさん2010/11/07(日) 01:15:59
何をもって理解してるといえるのかっていうのも微妙だな
ポインタパズルが解けたり、連結リストが作れれば理解してるといえるとかっていうと
どうもしっくりこない
254 :仕様書無しさん2010/11/07(日) 01:26:37
ポインタのポインタが理解できたら、ポインタは理解できたと思っていいんでは中廊下
255 :仕様書無しさん2010/11/07(日) 01:31:14
ポインタは使う目的があるから意味がある。パズルなんて無意味だろ。
256 :仕様書無しさん2010/11/07(日) 01:55:24
関数ポインタ「ダブルポインタがやられたようだな」
クラスメンバへのポインタ「ククク…奴は四天王の中でも最弱…」
ポインタに対するconst「>254ごときに負けるとは我ら四天王の面汚しよ…」
259 :仕様書無しさん2010/11/07(日) 10:45:53
関数ポインタの表記ってなんか気持ち悪いよね
↓みたいな表記にするべきだよ
(void(int x, int y))* fptr = NULL;
263 :仕様書無しさん2010/11/07(日) 19:28:12
>>259
そのノリだと関数の宣言は
void(int x,int y) f;
かな?
267 :仕様書無しさん2010/11/07(日) 21:29:28
>>263
関数やクラスの型宣言と変数の宣言は違う話だと思うけど
そこまで一元化してもいいかもね。
260 :仕様書無しさん2010/11/07(日) 13:50:15

ttp://kmaebashi.com/programmer/pointer.html
>K&Rによれば、Cの宣言は、「変数が現われ得る式の構文を真似た(P.114)」そうである。
>しかし、本質的に全く異なるものを無理に似せようとしたため、
>結局わけのわからない構文になってしまっている。

># Cの作者Dennis Ritchieが最近開発した新しい言語 Limboは、一見
># C like だが、宣言の構文はしっかりPascal風のものに直してある...
># ずるい(^^;
264 :仕様書無しさん2010/11/07(日) 19:54:27
>263
関数の宣言・定義は、名前が最初に出たほうがわかりやすいと思う。
265 :仕様書無しさん2010/11/07(日) 20:16:56
そういう変な配慮を優先して
また文法が汚くなっていくわけか
266 :仕様書無しさん2010/11/07(日) 20:20:08
>260
K&RのKの方もgo(googleのアレ)で型は後置にしてるね。
269 :仕様書無しさん2010/11/13(土) 04:08:25
ポインタはたらい回しだ。
サビ残は実体だ。
仕事は全部そいつがやる。
270 :仕様書無しさん2010/11/13(土) 17:28:57
仕事は本来なら定時に帰れてる奴だけがしている。
他の奴はバグを増やしているだけ。
273 :仕様書無しさん2010/11/19(金) 18:59:27
これだけ上手く説明出来ないから、分からないやつには分からんのだろね(笑)
275 :仕様書無しさん2010/11/27(土) 07:22:11
ポインタをデバッガで追いまくってメモリマップで覚えた俺は
メモリマップで説明出来るけど、例えで説明する事が出来ない。
277 :仕様書無しさん2010/11/28(日) 17:50:19
変に凝ったり、パズル的なトリッキーな使い方をしない限りは、
特に難しいものでもないでしょ。
278 :仕様書無しさん2010/11/28(日) 20:46:41
>>277
それで混乱するようでは理解できてるとは言わないだろ。
280 :仕様書無しさん2010/12/05(日) 18:16:54
>>278
ガツを理解できないプログラマはもういらない
281 :仕様書無しさん2010/12/05(日) 22:19:38
>>280
アンカー間違ってるぞ。
282 :仕様書無しさん2010/12/05(日) 23:23:37
なんでこんなもの考えついたのかね
アセンブラの間接アドレッシングに端を発するのだろうか
そもそも間接アドレッシングが必要なのか
284 :仕様書無しさん2010/12/05(日) 23:45:23
>>282
速度要求する場面では必要だろ?
288 :仕様書無しさん2010/12/06(月) 08:40:14
>>282
いまの時代お前みたいなのでもプログラマーとか言うんだもんなww
283 :Perl忍者 ◆M5ZWRnXOj6 2010/12/05(日) 23:31:41
Cやっててたのしい?

おれよりクソなのに Cやっててたのしい?
285 :仕様書無しさん2010/12/05(日) 23:59:09
オブジェクト指向言語なんて実際のところはポインタの嵐だろ。
286 :仕様書無しさん2010/12/06(月) 00:37:32
実際はそうだろうが開発しやすく設計する為のOOPだろ
287 :仕様書無しさん2010/12/06(月) 04:35:20
>>285
そうなんだけど、ほとんどの高級言語は
内部的にはポインタの嵐じゃまいか?

>>286
そう思うけど、実際にC++で開発やってて、
場合によってはCのほうがいいなとか思ったことある。

OOPはUMLとか使う奴が多いから、SEは楽なんだけど、
プログラマに仕様を徹底させるのがすごく大変。
それだったら、はじめからOOPなんて使うなよ、
などと思ったこともあった。
仕事によって違うかな?
289 :仕様書無しさん2010/12/06(月) 09:02:18
5次元ポインタの世界へようこそ
前人未到の38次元ポインタ使いになるまで頑張りましょう
290 :仕様書無しさん2010/12/06(月) 14:47:22
n次元配列は規則性に従って作ってるなら数増えてもそうそう困らない
293 :仕様書無しさん2010/12/10(金) 01:32:48
半端なマにコードかかせると、
OOPになるほど理解が足りなくなってより酷いコードが生み出される悪循環
295 :仕様書無しさん2010/12/11(土) 12:34:58
今プログラムのドコの行を実行しているか…って事自体がポインタなんですが。
296 :仕様書無しさん2010/12/11(土) 13:51:53
アセンブラの世界は全部メモリのアドレスで
ポインタはもう一層上の概念。
プログラムカウンタはポインタじゃねーッス。
297 :仕様書無しさん2010/12/11(土) 14:14:02
>>296
あ? 同じだよ
プログラムコードを格納した場所を示しているんだ。
実行するごとに移動させるんだ。
ほら、同じだろ?
298 :仕様書無しさん2010/12/12(日) 14:51:09
>>297
使い方が似てるだけ。
高水準言語のポインタは、もうちょい抽象的なもの。
299 :仕様書無しさん2010/12/12(日) 18:59:58
>>298
大丈夫だ
Cで書かれたエミュレータがこういう使い方してるからw
300 :仕様書無しさん2010/12/12(日) 19:02:06
>>299
俺の知らないことをいってごまかすのはやめろ
301 :仕様書無しさん2010/12/12(日) 22:48:59
>>299
オフセットを表すintの値でも良いわけであって、
エミュレータをどう実装するかは特に関係がない。
302 :仕様書無しさん2010/12/12(日) 22:56:07
オフセットをあらわすint = ポインタだろw
307 :仕様書無しさん2010/12/13(月) 20:37:40
>>302
ポインタはもっと漠然としたオブジェクトなどへの参照であって、
基本的には言語内で完結するもので、その内部表現によらない。
プログラムカウンタはプログラムと実行系とのインターフェイス。
304 :仕様書無しさん2010/12/13(月) 01:08:43
プログラムカウンタはレジスタであって、ポインタではないな。
308 :仕様書無しさん2010/12/14(火) 01:41:46
データとプログラムを
同一に扱うのがポインタの本質。
ノイマンコンピュータの定義だ。
309 :仕様書無しさん2010/12/14(火) 01:57:48
一体なんの話をしているのか?
「ポインタという概念の定義は何か?」という話なのか?
「ポインタという概念はどう定義すべきか?」という話なのか?


前者ならば、仕様書に定められた定義を辞書的に見るだけでよい。
それだけの話。"俺流"の解釈でポインタを論じても意味が無い。

後者なら、仕様書の定義を持ってきても意味が無い。
"俺流"の解釈を披露しあうのが筋。
310 :仕様書無しさん2010/12/16(木) 00:59:06
ポインタとアドレスレジスタは同じ概念。
当然プログラムカウンタはアドレスレジスタの特別な名前
311 :仕様書無しさん2010/12/16(木) 03:40:58
ポインタってメモリに置かれるんじゃね
レジスタとはちがくね
315 :仕様書無しさん2010/12/17(金) 07:53:37
>>311
最適化しなくても普通はレジスタに割り当てられるよ
313 :仕様書無しさん2010/12/17(金) 05:41:11
全く同じものだったらそもそも別々の言葉として生まれてないだろ
314 :仕様書無しさん2010/12/17(金) 07:52:47
アセンブラとCって言語体系が違うからね。
用語が違うのはあたりまえだろ?
316 :仕様書無しさん2010/12/17(金) 15:57:16
ポインタをアドレス以外の方法で実装することだってできるはず。
317 :仕様書無しさん2010/12/21(火) 21:17:06
昔使ったCインタプリタではポインタはアドレスではなかった
319 :仕様書無しさん2010/12/22(水) 07:37:48
どんなにオブラートで包もうが、インタープリターであろうが、内部的にはアドレスだろ。
仮にテーブルに対するハンドルNOでも、それは結局テーブルをアクセスするアドレスだ。
320 :仕様書無しさん2010/12/22(水) 10:10:55
メモリ全体に対するアドレスではなく、そのプログラム自身が格納されたアドレスを起点としたアドレスでポインタを扱う処理系があると聞いたんだが、そんなの本当にあるの?
321 :仕様書無しさん2010/12/22(水) 17:51:37
x86のタイニーモデル。
CSとDSが必ず同じ値になるから、プログラム先頭アドレスからの相対値で扱うのと同じ事になる。
322 :仕様書無しさん2010/12/22(水) 21:01:16
ダブルポインタを使いこなせるようになって初めてポインタを理解したと言えると思うんだが今となっては20代の若手でそれができてるのはごくわずかなんだろうな
323 :仕様書無しさん2010/12/22(水) 23:54:51
ダブルポインタって使用頻度は決して少なくないのでは?
引数としてポインタを渡し関数内部でメモリ確保する場合とか
324 :仕様書無しさん2010/12/23(木) 00:46:31
ポインタの配列が使えれば実務上はなんとかなるが、理解できているとは言えない。
325 :仕様書無しさん2010/12/23(木) 08:28:04
俺は入社2ヶ月でポインタを理解していたのか。
未だに関数ポインタ実戦で使った事ないけど。
326 :仕様書無しさん2010/12/23(木) 09:40:26
>>325
CでOOPやってないからだろ。
327 :仕様書無しさん2010/12/23(木) 11:43:36
関数ポインタは使わないで済むなら使わないほうがいいだろ
可読性落ちるぞ
330 :仕様書無しさん2010/12/28(火) 08:59:10
ポインタは理解できてもポインタを使ったコールバック処理が理解できない
332 :仕様書無しさん2010/12/29(水) 09:45:56
プログラムとデータが混在する瞬間だから、分からなくなるのも無理は無い。
333 :仕様書無しさん2010/12/29(水) 10:37:58
int x;のポインタはxが保存されているアドレスを表しているわけだが、
ダブルポインタだとxが保存されているアドレスのアドレスを保存しているんだよな。
じゃあさらにそれを保存しているポインタがあって、そのポインタもさらに保存しているポインタがいるわけだよね?
流石にメモリが足りなくなるだろうからそんなのメモリ上に持っていないんだろけど、どうやって表現しているんだろ。
337 :仕様書無しさん2010/12/29(水) 14:31:03
>>333
>じゃあさらにそれを保存しているポインタがあって、
int x;と宣言した段階で自動的にそれらのポインタまで確保されるわけではない。
プログラマーが宣言するまでポインタは1つも作られない。

int x;と宣言したら、PCがメモリ上のある番地をx用に確保する。
「&x」でその番号を取得できる。
PCがやるのは ここまで。xへのポインタは自動的には作られない。

もし「&x」とポインタを混同しているなら勘違いも甚だしい。
336 :仕様書無しさん2010/12/29(水) 14:16:48
< 流石にメモリが足りなくなるだろうから

今のパソコンでそれはない
338 :仕様書無しさん2011/01/01(土) 02:15:45
ポインタよりテンプレートのほうが理解できない。
やたら複雑にされるとマジで困る。
339 :仕様書無しさん2011/01/01(土) 12:21:50
>>338
ま、あれは俺様仕様の最たるものだからなw
覚える理由なんて皆無の癖に、覚えてないとメンテナンス効率が落ちると言う悪魔の呪文
340 :仕様書無しさん2011/01/01(土) 17:55:22
テンプレートは、もともと複雑怪奇なマクロで作られていたものを、使いやすくしただけのもの。
テンプレートで複雑なもの作るやつは排除していい。
341 :仕様書無しさん2011/01/02(日) 00:29:25
テンプレートってバリバリ使いこなせるほうがカッコイイのかとも思ったけど、
自分以外がそのソースを修正することもあるんだと思ったら、やっぱ多用しないほうがいいよね。
342 :仕様書無しさん2011/01/02(日) 13:38:44
テンプレートは公知の用法以外はダメ!
マクロはマジックナンバー避ける以外の使用方法以外の簡略目的とか全部禁止!
そんくらいしないと可読性がどんどん落ちていく。
344 :天使 ◆uL5esZLBSE 2011/07/04(月) 23:16:14.56
2011年になっても未だにJAVA使い続けてる奴ってさ
仕事で仕方なくならわかるけど

家でもJAVAやってるなら本当にバカだよね。哀れ


ゴミはゴミ
346 :仕様書無しさん2011/09/03(土) 00:52:46.68
ポインタないとnew使えないじゃん
俺なんか間違ったこと言ってる?
347 :仕様書無しさん2011/09/03(土) 01:22:00.75
JavaもC#もポインタは無いのにnew連発だけど?
349 :仕様書無しさん2011/09/03(土) 07:49:10.95
>>347
Javaなんてポインタだらけだろw
353 :仕様書無しさん2011/09/03(土) 21:15:58.12
>>347
C#は制限付きながらポインタが使える
351 :仕様書無しさん2011/09/03(土) 13:49:24.43
たとえで解説しようとすると余計分からなくなるのがポインタ
アセンブラを覚えれば即理解できるのもポインタ
低水準側からの視点を持てば一発で解決するよ、こんなもん
352 :仕様書無しさん2011/09/03(土) 20:32:14.17
引数に*が付いてると途端に何を渡せばいいのか分からなくなる
356 :仕様書無しさん2011/09/06(火) 02:10:43.84
ポインタは誰かが例えていた、宝箱と宝の地図が一番分かりやすかった。
357 :仕様書無しさん2011/09/06(火) 17:52:03.61
ポインタがI/O指してても、あるいはレジスタファイルを差してても
それがオブジェクトとして扱えるのであればまったく問題ないわけだが。
358 :3572011/09/06(火) 17:52:55.71
あ、どこも指してはいない場合もあるな。
359 :仕様書無しさん2011/09/06(火) 22:56:12.08
>>358
ガッ
360 :仕様書無しさん2011/09/07(水) 22:47:19.51
っ[オブジェクトのポインタ]

ポインタのポインタとか普通だし、再帰呼び出しとか、λ関数も理解しとけな。
「理解」できないプログラマはもう要らない。
363 :仕様書無しさん2011/09/09(金) 20:53:20.61
ポインタのポインタとか再帰呼び出しって
入門向けの書籍にも解説があるでしょ。
それが理解できないプログラマは、運転のできない運転手のようなものでは?
372 :仕様書無しさん2011/09/13(火) 06:52:47.06
>>363
日本には、理解できてないのに入門者用の本を書いている人もいるんだよな。

変数に対してプロパティを用意するのと同じように
デリゲートに対してイベントを用意することを
理解していない人が書いてみました。↓

>連載! とことん C#: 第 23 回 ラムダ式とデリゲート (delegate)
>http://code.msdn.microsoft.com/23-delegate-4957d7df/
374 :仕様書無しさん2011/09/13(火) 21:30:48.89
>>363
サンプルコードを理解できる人は多い。
しかしサンプルコードは単に挙動を説明しているだけ。
それだけでは、何らかの意味のあるコードを理解しているわけではない。
364 :仕様書無しさん2011/09/09(金) 23:09:43.06
でも派遣で逝かされた現場(三菱MDIS)は、「運転のできない運転手」ばっかだったな。
それが信号機の制御だとか、新幹線などの鉄道とかの交通制御システム作ってる。
365 :仕様書無しさん2011/09/09(金) 23:47:38.62
底辺派遣なんぞわかってねーやつで十分だよ
無茶な運転されてドリフトできるんですよーとか言うやつが一番いらねぇだろ
366 :仕様書無しさん2011/09/10(土) 00:49:05.15
とにかく、ポインタの値を変更してはいけない。
変更できると便利なのだが、絶対するな。
367 :仕様書無しさん2011/09/10(土) 01:48:50.15
運転できない運転手だらけでも、何とかなるような仕組を作ってあるので問題ないんですよ。

知識や技術を要する箇所は、それを担えるレベルのプログラマに担当させる。
底辺派遣くんは、内部を知る必要はなく、ただそれを仕様書通りにコールするだけでいい。
369 :仕様書無しさん2011/09/10(土) 21:50:34.33
小難しい事は何もかもフレームワークがやってくれる。
ごく限られた知識しかなくても、フレームワークに乗っかれば何とかなる。

ごく基本的な知識もないままフレームワークに完全依存なので、
それが廃れた時、ひどい場合はバージョンアップで仕様が少々変わっただけで、
ついていけなくなり退職する事になるけどね
371 :仕様書無しさん2011/09/12(月) 19:56:05.53
変数を固有の型のアドレスレジスタとして使うだけだろ
これだけいって理解できなきゃCPUとメモリの関係について勉強すればいいだけじゃん
375 :仕様書無しさん2011/09/14(水) 15:59:52.77
オンラインゲーム、まぁMMOの
スキルスロット(ショートカットキー)、アイテムスロットで例えるとわかりやすい気がする。

ドラックandドロップ→アドレスの代入
アドレス先の参照→ショートカットキーに登録されているスキル、アイテムの使用
ポインタの配列→スキルスロットのスロットの一覧(アイテムが横一列に表示されている)
376 :仕様書無しさん2011/09/14(水) 17:45:15.83
余計( ゚д゚)ポカーンとさせる典型的なたとえだな
378 :uy2011/09/16(金) 03:24:19.32
>>375
プログラマにはこういう奴いるよな

>>376
そうなんだよ、 自分はこういう風に覚えてる これで理解したっていうのでも
他人にそれは適用されないっていうことに、気づいてくれない。。。。。 おめー歳いくつだよっていう
そういう奴が教育係だったりするとマジで後輩は困るんだよね
383 :仕様書無しさん2011/09/17(土) 16:24:50.09
>>376-379
てめーらMMOやったことあるのか?
俺がスクリーンショット撮って図解してやるから待ってろ!
377 :仕様書無しさん2011/09/14(水) 20:31:48.03
そういう例えがいちばん理解不可能だ。
そもそも、オンラインゲームをやらない人には、全く話が通じない。
379 :uy2011/09/16(金) 03:25:52.26
だから、そういう例え話は最初なんもしなくていいからさ

例え話しなくても理解してくる奴は理解してくるんだよ
わかんねーわかんねーいってる奴にだけ、そういうゴミみたいな例え話を何個も何個もすれば

そうしていくうちに1個くらいはヒットして理解してくる
381 :仕様書無しさん2011/09/17(土) 01:03:13.32
わかんねーとか言ってる奴は、実際にコードを書いて
挙動を確認しようとしてないんだろ。
20年前ならともかく、今なら無料の開発環境でさえ、
1ステップずつ実行し変数の内容も確認できるってのに。
389 :仕様書無しさん2011/09/18(日) 14:25:29.10
>>381
コードに興味がないプログラマ志望者が増えた。
極端な例では、プログラム言語がどのようなものか、おぼろげなイメージさえない人が増えた。
派手なGUIやWebページやゲーム画面など、目に見える部分だけがソフトウェアだと思い、
プログラマとはそれを開発する、デザイナーのような職業だと勘違いしている。
382 :仕様書無しさん2011/09/17(土) 10:20:00.92
gdbなら、25年前には既に余裕で存在してたな。
30年前でも出来たんじゃないか?
当時、GNUツールを動かすUNIXマシンを個人で使える人は限られてたかもだが。
384 :仕様書無しさん2011/09/17(土) 17:42:26.53
ポインタは例え話での説明が必要なほど、難解なものか?
入門書に良くある、アドレスが順に書かれた箱を使った説明で十分だろ。

ところでネットゲームやってるプログラマなんているのか?
毎年1人はネットゲーム中毒者が入ってくるが、
ゲームのために会社を辞めるか、仕事のためにゲームをやめるかどっちかだ。
385 :仕様書無しさん2011/09/18(日) 02:38:32.27
>>384
>やった
398 :仕様書無しさん2011/09/20(火) 23:02:56.79
>>384
面接でネトゲ自慢をする奴は原則アウト。
ほとんどがただのゲーム馬鹿だから。
ネトゲの開発に直接携わった経験があるというなら話は別だが
そんな人はまずいない。
386 :仕様書無しさん2011/09/18(日) 02:45:20.75
オンラインゲームでプログラマの本領を発揮すると、スーパーマンになれるんだよ。
しかも、自慢する相手が仰山いるのがオンラインゲーム。
391 :仕様書無しさん2011/09/19(月) 11:08:59.36
オブジェクト指向がどういうものかすら知らない上司はいらない。
392 :仕様書無しさん2011/09/19(月) 15:00:36.78
ポインタを理解できないような人は
ポインタの概念がない言語の理解もあやふやだと思う。
393 :仕様書無しさん2011/09/19(月) 15:56:19.27
Cを触ったことも触るつもりもないので、これからも僕はポインタなんて知らないままですが
困ってないので別にいいです
394 :仕様書無しさん2011/09/19(月) 17:01:52.02
>>393
馬鹿は自分が馬鹿なことに気付かない
395 :仕様書無しさん2011/09/20(火) 00:51:54.20
Cの文法マスターして関数羅列型のゲーム作った。
C++のオーバーロードやオブジェクトの便利さに気づいてifやswitch使ってたのが馬鹿らしくなった。

そんな思考の俺ならきっと君たちの上司になれると思うんだけどどう?
397 :仕様書無しさん2011/09/20(火) 21:04:15.65
徹底的な高速処理を追及する必要がある箇所は
まずはオブジェクト指向を捨てる事が必要だと気づいた。
400 :仕様書無しさん2011/09/21(水) 20:35:20.80
ポインタってそんなに難しいものか?
難しく考えすぎているだけじゃないか?
402 :仕様書無しさん2011/09/22(木) 00:29:45.15
ポインタはファイルのショートカットってわかりやすくね?
404 :仕様書無しさん2011/09/22(木) 11:57:47.27
インクリメントとかすると、思いのほか配列と整合取れてて感心する。
405 :仕様書無しさん2011/09/22(木) 19:36:22.02
>>402
シンボリクリンク…馬の名前みたいだな

>>404
型が合ってればな。
406 :仕様書無しさん2011/09/23(金) 16:10:31.94
実際にコードを打ち込み、デバッガで値を見ながら試行錯誤してみれば、
おおよその事は理解できるものではないの?
407 :仕様書無しさん2011/09/24(土) 01:10:34.06
できない奴に何とかして理解させようとするより、
できる奴を探して任せた方が手っ取り早い
411 :仕様書無しさん2011/09/25(日) 20:44:58.37
ポインタの値をもらってくる関数とか書いちゃダメなの?
信じられねえw
412 :仕様書無しさん2011/09/25(日) 20:50:06.94
>>411
いったん変数で受け取ってポインタにキャストするんじゃね?
414 :仕様書無しさん2011/09/26(月) 01:50:07.95
>>412
そちのがひどい実装だろw
移植性とか将来的な互換性とかまったく無視かw
415 :仕様書無しさん2011/09/26(月) 03:41:28.97
なんでもいいからアセンブラひとつやらさないと
プログラマなんかできないようにすればいいのに。
417 :仕様書無しさん2011/09/26(月) 21:28:31.48
アセンブラを学べばポインタなんてすぐわかるという主張が多いけれど
わざわざアセンブラを学ばないといけないほど、難しいものか?
さっぱりわからないという人は、入門書の最初の段階で躓いて、
再学習しないまま先に進んでしまった人ではないか?
418 :仕様書無しさん2011/09/26(月) 21:43:21.74
まあ、Cが元々アセンブラで組むのマンドクセから始まってるから、アセンブラ出来るってのが前提の言語仕様だからなぁ
その延長線上にあるC++も同じ事さ。
419 :仕様書無しさん2011/09/27(火) 05:26:13.71
つか、ノイマン型のコンピュータってこういうモンだってちゃんと学べば
ポインタの概念なんて当たり前にわかるよな?
そんなことも知らないでプログラマってのはどーなのよ。
420 :仕様書無しさん2011/09/27(火) 06:01:28.29
でもまあ近頃は「CPU?、OS? なにそれおいしいの?」とか言い出す人間がコーディングする時代だからなぁ…
422 :仕様書無しさん2011/09/28(水) 21:20:34.71
ポインタがわからない人は参照もよくわかってない。
423 :仕様書無しさん2011/09/28(水) 23:39:56.55
>>422
それはないと思う。
でも参照の参照はわからないだろうね。
424 :仕様書無しさん2011/09/29(木) 00:12:58.06
そうなの?
機能と原理の関係だから、片方解る人はどっちも解ると思うんだけど。
ていうか、簡単な事を難しく説明する馬鹿だらけだから、初心者が挫折するんじゃないの。
425 :仕様書無しさん2011/09/29(木) 00:14:14.57
昔のMacでプログラミングしてたころはポインタのポインタとか使いまくりまクリスティだったので
ポインタに全く抵抗ない。
というか、当時MacでCを使ってプログラムを書こうとするとその辺をきっちり理解しないとまともに動くプログラムは
書けなかったので嫌でも覚えるしかなかった。
426 :仕様書無しさん2011/09/29(木) 03:02:32.09
ハンドルってやつだな。Cならまだちょっとは簡潔だったけど
Pascalで書かれたのは見づらかったな…
427 :4252011/09/29(木) 03:20:16.17
あー、それだ。ハンドルってやつ。

当時なんであんなややこしいことするんだろって思ってたけど
狭いメモリでを有効活用する術だと知って当時工房だった俺はいたく感動したっけ。
428 :仕様書無しさん2011/09/29(木) 08:03:09.33
int型のアドレスと参照先の型がintの区別がつかない

int *a;
どういう
429 :仕様書無しさん2011/09/29(木) 09:00:04.31
>>428
そんなん大事故の元だ。
430 :仕様書無しさん2011/09/29(木) 10:19:20.43
int型のアドレスってそもそも何だよ(´・ω・`)
アドレスなんだから整数に決まってんでしょ
(´・ω・`)ねぇ?
431 :仕様書無しさん2011/09/29(木) 11:20:49.35
>>430
開始アドレスから何バイトを変数として扱うか判らないだろ
433 :仕様書無しさん2011/09/29(木) 15:35:04.77
っ[LP64]
436 :仕様書無しさん2011/09/29(木) 23:48:47.90
>>434
そんなこと言ってた奴が、DOS(16bit)から、WIN32APIに移行する時に死亡フラグ
建てまくったわけだが。
そして今、AMD64アーキに移行しつつある。>>433 に中尉しろ。

C言語って、intに限らず、どの型も相対的な大小関係が決まってるだけで、
具体的なbit幅は、処理系依存だ。同じintelアーキでも、同一マシンですら、
リアル(16bit)モードと、WIN32APIモード、更にAMD64モードで変化する。
32bitや64bitOSから、16bit BIOSを呼び出すデバドラのポインタを間違えずに
扱えるか? 個人的にはBIOSなんて8bit時代の遺跡は撲滅して、さっさと(U)EFIに
移行してくれと思うけど。
455 :仕様書無しさん2011/09/30(金) 23:07:40.08
>>433 から読み直せボケナス
457 :仕様書無しさん2011/09/30(金) 23:33:02.67
で、NetBSDを始め、Linus君もDEC α買って、64bit化する時にまた同様の問題が
出て来たので、そこで>>433 という解決策が取られた。

スレタイ通り、ポインタどころか、単純な変数の型すら理解できないプログラマは
もう要らない。
434 :仕様書無しさん2011/09/29(木) 18:03:41.78
つか、アーキテクチャの違う別マシンと直接のデータ交換するワケでも無いだろうから、intはintでいいから型違いだけ気をつけれや。
435 :仕様書無しさん2011/09/29(木) 21:57:41.69
実際に動かして見て、試行錯誤や確認をする人が少ないんでしょ。
文書や図による説明を理解しようとするより、
実際の挙動を見る方が確実だ。
絵や音が出るわけではなく、遊べるわけでもなく、単に値の変化を見るだけなので、
何の興味も持たない人が多いんだろうけど。
437 :仕様書無しさん2011/09/29(木) 23:53:43.44
だぁかぁらぁ、int型は他の型に代入しないってだけでいいんだよw
他の型はハードが何になろうがビットサイズ決まってるだろw

一番いいのは、int型を一切使わないやり方だなw
443 :仕様書無しさん2011/09/30(金) 07:42:32.99
>>437
馬鹿。何一つ分かってないな。
shortだろうが、longだろうが、BIOS〜MBRなリアルモードとWIN32APIが立ち上がって
からだと、長さ違うんだよ。ド素人が。
猿でも作れる2次元画面アブリばっかやってないで、デバドラや、BIOSのマイクロコード
書いてみやがれ。
444 :仕様書無しさん2011/09/30(金) 09:02:58.99
>>443
もっと普通に教えてあげればいいのに、なんでそんなことすらできないの?
445 :仕様書無しさん2011/09/30(金) 09:15:48.60
>>444
それは、ポインタの幅が違うだけじゃね?
もしくはレジスタのな。
内部表現がどう変わろうが、int型以外は有効なbit長は言語仕様で決まってるだろうに。
448 :仕様書無しさん2011/09/30(金) 17:29:10.67
>>445
>int型以外は有効なbit長は言語仕様で決まってるだろうに。
だから決まってないんだってば。それが言語仕様。

お前みたいな勘違い君が、intelベースの組込み案件やると死ねるぞ。
442 :仕様書無しさん2011/09/30(金) 02:03:31.41
すいません。普通に間違えた。
longの宣言で8桁削れば32bitで動くと思います。
449 :仕様書無しさん2011/09/30(金) 18:41:03.60
>448
>お前みたいな勘違い君が、intelベースの組込み案件やると死ねるぞ。

仕事でやるわけじゃあるまいし、今この時点で勘違いしてても、そんなのどうでもいいw
仕事ならマニュアル読むから問題ないしw
451 :仕様書無しさん2011/09/30(金) 20:43:08.86
まあ8086ですら(メモリモデルって形で)ポインタの長さは複数あったからな。

>>449
無知を晒して開き直りとかみっともない。
450 :仕様書無しさん2011/09/30(金) 20:04:46.02
DOS時代の海外製C言語インタプリだけど、
オプションでビット長を変えられるのも存在した。
主に学習用途のもので、様々な処理系を模した挙動ができるよう、そんな機能を持ってた。
456 :仕様書無しさん2011/09/30(金) 23:29:15.47
>>452
>変数の型は言語仕様で決まってるってのはOK?
NG
>>450さんが書いてある通り、同じ言語でも処理系で、また同じ処理系でも>>451さん
が書いてる通り、intelアーキだと(ポインタに限らず)変数型の長さは不定。
MINIXからLinuxを作る時、DDJ版GCCを使うか、bccを使うか2通りの方法が有った
わけだが、これらのコンパイラもフラグを指定することで>>450さんが言うように
(ポインタに限らず)変数型のbit長を変えることが出来た。そうでないと、お前が言うような
>変数の型は言語仕様で決まってるってのはOK?
な言語仕様では、いつまで経ってもLinuxは生まれなかった。

>変数のポインタの内部表現は決まっちゃいないってのもOK?
言うまでもない。

何度も書かれてるのに、間違った思い込みを直せないのはアスペ? 糖質?
458 :仕様書無しさん2011/10/01(土) 08:08:26.18
>>456
> 何度も書かれてるのに〜

間違ったまま成長した老害なんでしょ。
465 :仕様書無しさん2011/10/03(月) 02:36:05.63
>>456
×有った
○在った
間違うくらいなら漢字使うなボケ
452 :仕様書無しさん2011/09/30(金) 21:49:00.03
おまいら、ポインタの実体の話してんのか?
道理で話が噛み合わない筈だ。
変数の型は言語仕様で決まってるってのはOK?
変数のポインタの内部表現は決まっちゃいないってのもOK?
453 :仕様書無しさん2011/09/30(金) 22:20:49.37
>>452
最初からそういう話をしていたわけだが。君以外。
454 :仕様書無しさん2011/09/30(金) 22:47:04.80
>>453
で、ポインタの内部表現のbit幅が違って困る事って何?
メモリサイズの上限とか?
459 :仕様書無しさん2011/10/01(土) 12:22:36.79
つか、限られた処理系の話かよ。
476 :仕様書無しさん2011/10/04(火) 07:17:50.79
>>459
スレタイに「ポインタ」とある以上、ポインタのある言語なんか
限られてるわけで。
461 :仕様書無しさん2011/10/02(日) 17:16:54.28
JavaのWeb開発やってる連中だと、配列がわからないとか、
forやwhileを使うループがわからないとか言ってるのがゴロゴロいるぞ。
そんな連中が多数、プログラマをやってる時代。
ポインタなんて理解できたら、上位1割に入るレベルだろ。
463 :仕様書無しさん2011/10/02(日) 19:06:36.71
>>461
え。。。
466 :仕様書無しさん2011/10/03(月) 03:51:52.11
>>461
あるあるww

for文で3000回ループさせれば済む処理を、マウスでコピペして3000回
clickしてる奴な。「clickの回数間違えたら大変なことに成るから話し掛け
ないでくださいっ!」って時蕎麦かよww
三菱MDISの山下、お前のことだ。いつまでもそんなことばっかやってるから
欠陥システムばかり納入してる。
468 :仕様書無しさん2011/10/03(月) 18:37:14.65
行数稼ぎが目的であれば、
1+5+6+10+10=32回貼り付けたら終わりの作業だ。

>>466
岡崎図書館事件の背景にはそんなゴミくずの存在があるんだな。殺した方が世の中のためだな。
469 :仕様書無しさん2011/10/03(月) 19:25:03.90
そういえばノートパソコンの直流電流が10A超えてるから危険だとか言い出して、
東京に出張に来たのに机の上にパソコンを放置して数日間どこにいたのかまったく不明だった中村という株ゼンリンのイントラネット管理者もいる。

こいつは中学のときに満員電車の中で俺の心臓めがけて銃を発砲した男だ。
2001年にはJR博多駅のホームで、ナイフと銃が合体した特殊な銃で俺を脅迫してきた。

多分、三菱MDISの山下という男もそういう普段から拳銃で人を殺すような人間なんだろう。
そんなことをしても警察沙汰にならない特殊部落出身の人間なんだろう。
だからどんな無能でも会社は雇う。
部落は2ちゃんねるの書き込みを監視しているから、>>466 を書き込んだ人は今ごろころされてるかも。
480 :仕様書無しさん2011/10/05(水) 20:04:53.10
>>461
C言語を教える専門学校が少なくなったのは、
需要が減ったからと言うより、挫折者が多すぎるからだそうだ。
基本的な制御構文の時点で、既についていけない人が多数いるのに、
ポインタが登場し始めると挫折者が更に増える。
487 :仕様書無しさん2011/10/06(木) 17:53:23.76
>>480>基本的な制御構文の時点で、既についていけない人が多数いる
え。。。
491 :仕様書無しさん2011/10/06(木) 20:36:22.93
>>487
変数がわからないって奴が毎年いる。
変数に数値や文字列等を格納するということは理解できても、
変数を使わず、直接数値や文字列を書けばいいじゃないかと思うそうだ。

そんな事をすると、値が変わる度に毎回コードを書き換えるはめになると説明しても、
「値が変わるならコードを書き換えて当たり前じゃない?」と返してくる。
492 :仕様書無しさん2011/10/06(木) 21:21:20.37
>>491
当たり前だな。
462 :仕様書無しさん2011/10/02(日) 18:42:52.51
配列がわからない奴って?

hensu1 = hoge;
hensu2 = hoge;
hensu3 = hoge;

みたいに書くん?
464 :仕様書無しさん2011/10/02(日) 19:33:01.83
>>462
long kingaku1;
long kingaku2;
long kingaku3;

前任者がこんなプロパティ定義してくれたおかげで
保持件数を増やす時に酷い目に遭った
470 :仕様書無しさん2011/10/03(月) 21:39:35.71
>>462
そうやって、変数を100個以上用意した奴がいた。
配列やリストを使えばいいんじゃないの?と言ったら、
配列もリストも知らない人だった。
100個程度で済む場合はともかく、数千や数万以上のデータ量になる場合は
どうするつもりなのかと思う。
471 :仕様書無しさん2011/10/03(月) 22:39:13.87
>>470
たぶん、変数名自動生成処理を作るんだと思う。
473 :仕様書無しさん2011/10/03(月) 23:42:40.65
>>469
スペッツナズ・ナイフかよww よくそんなもん入手できたな。B落経路なら入手可能なのか?

>>470
マウスでコピペして、3千回clickして、
hensu1=hoge1;
の1を2に、3に、…って書き換える作業に戻るんじゃね?
474 :仕様書無しさん2011/10/04(火) 00:55:59.88
>>473
Excelのオートフィル使えよw
475 :仕様書無しさん2011/10/04(火) 01:02:30.81
>>474
「オートフィルって何?」
472 :仕様書無しさん2011/10/03(月) 23:37:22.21
てめえはなんもわかっちゃいねぇ
山下さんは手動でレジスタに振ってたんだよ
477 :仕様書無しさん2011/10/04(火) 20:42:13.43
Pascalはポインタをサポートするコンパイラがある
Fortranも同様。
C#は制限付きだがポインタが使える。

ポインタを使える言語って結構ある。
478 :仕様書無しさん2011/10/04(火) 20:51:58.49
>>477
未だにPascalやFortranなんて現役で使用しているところなんてあるのか?
C#もJavaに押され気味だし…。
481 :仕様書無しさん2011/10/05(水) 20:51:40.36
>>477
けっこうある、とか言いながら中途半端な例が二つですか
反論厨うっざ
479 :仕様書無しさん2011/10/04(火) 22:25:42.01
Fortranは当面現役。
あんなのは研究や学術用途だけのものだと思ったら、
普通に製造や物流のシステムで多数生き残ってた。
特に、過去にVAXとかAlphaを使ってた所が、昔からの資産として継承し続けてるらしい。
482 :仕様書無しさん2011/10/05(水) 22:30:09.34
>>479
汎用機に成る前の大型機メインフレームもな。
交通信号の制御なんかも、今はCだけど、元はFORTRANだったのをコンバート
したらしい。交通とか物流システムでは、FORTRANとかApollo, HP-UX
知らないとハマる案件まだまだ残ってるな。

ただFORTRAN77の規格にはポインタ無いな。90でいきなりOOP(笑)
483 :仕様書無しさん2011/10/05(水) 23:09:22.75
プログラマがポインタを理解できないってのはないだろ。
ガリベンの奴ほど「俺、全然勉強してねーよ」とか言うのと同じで、
無能を装ってるだけでしょ。
ヘタに知識をひけらかすと、より一層仕事を押し付けられるはめになるし。
484 :仕様書無しさん2011/10/06(木) 03:07:53.84
ポインタの概念とシンタックスがわかることと、ポインタを有効活用できることは別
前者レベルの奴がポインタわかる風なツラしてたら噴飯
485 :仕様書無しさん2011/10/06(木) 09:17:31.00
ポインタは内容保証してくれないから、下手に使い回すと品質管理部からクレームが来る。
490 :仕様書無しさん2011/10/06(木) 20:19:34.75
巨大なデータの受け渡しに絶大な効果があるな。

詳しい説明のあるURLをメールに書いて、ここを見てと
送れば凄く簡単に説明書を提示できるが、リンク切れと
なっている場合もあるみたいな....そんな風なことだな。

ただし、サイトを見に行く場合にはそれを書き換えは出来ないな。
書き換えてしまうクラッカーなる連中もいるにはいるが。
502 :仕様書無しさん2011/10/07(金) 06:21:04.69
>>490
>リンク切れとなっている場合もあるみたいな
ぬるぽ
493 :仕様書無しさん2011/10/06(木) 21:37:34.93
そういう発想ができるヤツは経験で理解させるとのびるかもしれない
494 :仕様書無しさん2011/10/06(木) 21:43:41.87
物臭な学生は視点が違うのさ。宿題や課題としてしか見ていない。
どうせその場限り、提出すれば終わりになるものについて、再利用がどうのこうのと考える事自体が馬鹿馬鹿しい、と。
正しい結果さえ得られれば、処理手順をそのままベタ書きしたって何の問題もないし、
書き間違っていれば書いた時点でわかりやすくていい、という考え方。
500 :仕様書無しさん2011/10/07(金) 00:28:00.14
>>494
プログラム実習の課題って、毎回前回の成果物に手を加えて機能を追加するって内容じゃなかった?
495 :仕様書無しさん2011/10/06(木) 21:44:02.20
>値が変わるならコードを書き換えて当たり前じゃない?
だからそうならないようにだな。。。
499 :仕様書無しさん2011/10/06(木) 23:40:37.61
ポインタって動的確保や多重配列と合わせ技になるとむずかしいよね
普通に書くだけで呪文化するしへーんな書き方できるしな
ポインタや参照でひっぱりまわしちゃう人がスレッドに興味持ち出すと
グローバル変数縛りよりたちわるいしさー
501 :仕様書無しさん2011/10/07(金) 01:45:00.97
やあ、設計上は正しい内容を指しているはずというのは本当かい?
本当に実体はそこにあるのかい?実は解放済みだったり無効な領域を指してたりしないかい?
というのを完全に防いで安全を保証する手段ってあるのかな。
504 :仕様書無しさん2011/10/07(金) 15:26:25.00
一年くらいCOBOLの授業受けてた癖に
Cの九九の二重ループが理解できないやつがいるくらいだし
ああいう人ってどんなふうに考えてるんだろうな
506 :仕様書無しさん2011/10/07(金) 21:58:32.55
loop理解できずに、81行に渡って、
...
printf("7 x 3 = 21\n");
...
みたいなのを電卓叩きながらタイプしてる奴だらけだったな。
上で既出の三菱の現場だったけど。
507 :仕様書無しさん2011/10/07(金) 23:23:28.46
それは違うぞ?わかった上でやってんだ。
時間かけりゃかけただけ、行数が増えたら増えただけ、きちんと金がもらえてたからな。
508 :仕様書無しさん2011/10/07(金) 23:39:52.43
>>504
九九なんてCだろうがJavaだろうがCOBOLだろうが大して変わらんと思うんだが…。
つか近頃はC++→COBOLとかCOBOL→Javaとか他の言語に移行したたげでバンザイする人間が多い気がする。

>>507
そういや随分昔、COBOLのコーディングで出来るだけコードの行数を削ってコーディングしたら怒られたことがあったな…。
コメントや空白行でもいいから改行を挟んで出来るだけ行数を稼げと言われたことがある。
511 :仕様書無しさん2011/10/08(土) 16:59:22.32
適材適所。そもそもポインタや、再帰呼出し、λ関数が理解できない奴は、
プログラマに向いてないんだから、他の仕事を探せよ。

>>508
ステップ数(笑)
509 :仕様書無しさん2011/10/08(土) 00:44:48.40
malloc等の動的メモリ確保が理解できないからと言って、
巨大な配列を宣言するのはやめてください。
何らかの根拠があるサイズならともかく、
適当に思いついた大きな数字にするのもやめてください。
516 :仕様書無しさん2011/10/09(日) 19:31:51.12
>>509
サイズ適当でも、確保出来ることが確実で、出来なかった場合の処理を書かねばならないよりは安全でいいじゃない。
文字列にしろ構造体にしろ、固定長で扱うべき。
518 :仕様書無しさん2011/10/09(日) 23:09:15.17
>>511
分かるんだがITに嫌気差して転職した。
マ板は懐かしさでたまに見るんだが、戻りたいとは思えないな……。

>>516
この場合の「安全」とは「メモリ確保に失敗したことによるエラーが生じない」の理解でいいのか?

バッファオーバーフローが怖いね。
NXビットがあるから「怪しげな動作を起こしてrootっちゃうゴミスクリプト」対策はなんとかなるが、
65537バイト書き込んで差し上げたら意味不明なエラーで落ちるというのはなんとも。
510 :仕様書無しさん2011/10/08(土) 15:09:05.18
ポインタを理解できない人に、理解させようと努力するよりも、
既に理解している人を探してきて担当させる方が時間もコストもかからない。
513 :仕様書無しさん2011/10/08(土) 21:11:09.75
あんまり機にしない。
再帰で実装するのはメモリ潤沢なときだから。
514 :仕様書無しさん2011/10/08(土) 21:41:48.80
そうそう、メモリ潤沢な環境下で作ったんだけど、マルチスレッド化しちゃったw
517 :仕様書無しさん2011/10/09(日) 21:07:21.92
アセンブラで独学だったからインデックスなプロシージャコールをC言語で実装できなくてswict分で羅列したっけ。
519 :仕様書無しさん2011/10/10(月) 00:28:51.51
>509
malloc禁止だったとこもあるからなぁ
フラグメンテーションで連続領域取れなくなって氏ぬとかで

今はそんなこと気にしなくてもいいのかな
521 :仕様書無しさん2011/10/10(月) 05:47:11.51
>>516
サイズ固定なら静的に確保すべき。

>>519
>フラグメンテーションで連続領域取れなくなって
まともなOSではない or そもそもOS上で動くものではない、のであれば
仕方ない。
520 :仕様書無しさん2011/10/10(月) 04:37:07.21
アセンブラから入れば、ポインタ理解できない奴なんかいないと思うよ。
523 :仕様書無しさん2011/10/10(月) 07:49:01.39
組込でmallocなんかやったら、逆に素人扱い
OSでメモリプール確保する方法もあるが、車載とかじゃそれも許されないはず
524 :仕様書無しさん2011/10/10(月) 09:46:16.12
>>523
うおお。もう完全に世界が違うなあ。
525 :仕様書無しさん2011/10/10(月) 13:39:16.44
組込一筋だった人が、オープン系開発に行かされた時は大変な事になった
526 :仕様書無しさん2011/10/10(月) 14:36:28.76
情報系なら、大学の1回生でいきなりmallocの弊害を叩き込まれて、
自前で様々なmallocを実装する作業^h^hレポートに戻らされてるハズだが。
そんな般教レベルの常識すら欠如してる文系君にプログラマやらさせるからデスマる。
527 :仕様書無しさん2011/10/10(月) 19:11:39.36
情報系ですがプログラミングは一切やりませんでした
mallocって何ですか?
528 :仕様書無しさん2011/10/10(月) 20:00:52.47
>>527
情報系ってなにをやったんですか?
なにをやるところなんですか?
533 :仕様書無しさん2011/10/10(月) 20:42:57.80
>>528
俺んとこもmallocなんてやらなかった
C++とPascalとLispだったし
534 :仕様書無しさん2011/10/10(月) 20:50:45.71
>>528
情報系の学部だからと言って、必ずしもプログラマを養成するわけではなく、
プログラミングを教えているわけではない。

文学部を出れば作家になれるわけではないし、
経営学部を出れば会社経営者になれるわけではないのと同じ。
大学の学問と、実学は必ずしも同じではない。
529 :仕様書無しさん2011/10/10(月) 20:04:14.81
ポインタなんて過半数のプログラマは全く理解していないだろうし、
使う機会も一切ないだろう。
無いと困る分野を除けば、消滅の方向に向かうんじゃないの?
530 :仕様書無しさん2011/10/10(月) 20:14:52.81
無理だね
ポインタを理解してないやつは俺が徹底的に馬鹿にするからね
俺が若い頃した苦労をお前もするべきだからね
531 :仕様書無しさん2011/10/10(月) 20:20:08.92
>>530
覚えたい奴には苦労をして貰えばよろしいんだろう。

ただ、覚える必要のない奴もいるからなあ。
532 :仕様書無しさん2011/10/10(月) 20:34:14.38
そんなに苦労したければアセンブラとかやればいいのにw
537 :仕様書無しさん2011/10/10(月) 21:08:00.00
>>532
どうしても意味が分からなくてアセンブラやった記憶はある。
「間接参照」を理解したら瞬殺。
535 :仕様書無しさん2011/10/10(月) 20:54:39.12
mallocでメモリ管理するほど高度なプログラム組んだことがない。
2kbしかないメモリでそんなことできるかいな
536 :仕様書無しさん2011/10/10(月) 20:58:35.94
情報系ってCSかIT以外だと似非情報系だろ。情報系とか名乗んなっての。
538 :仕様書無しさん2011/10/11(火) 00:02:48.35
えっ
プログラマってみんなメモリ構造とかバリバリなんじゃないの?
539 :仕様書無しさん2011/10/11(火) 00:51:09.03
>>538
学生はお勉強しててね
540 :仕様書無しさん2011/10/11(火) 15:15:07.23
「ポインタがわからない」には二つの意味がある。
 ・ポインタのアドレスの概念が理解できない
 ・ポインタを使わなきゃいけない理由がわからない
の二つ、
 前者ならば知恵遅れ
 後者なら経験不足
541 :仕様書無しさん2011/10/11(火) 20:40:18.45
OOPがどう実装されてるかわからんから知恵おくれだな。
継承ぐらいならなんとかなるとは思いたいけど、例外の実装はマジわからない。
542 :仕様書無しさん2011/10/11(火) 21:09:18.70
> 例外の実装はマジわからない。
手の込んだsetjmp/longjmpと思っとけば間違いないよ
543 :仕様書無しさん2011/10/11(火) 21:20:15.94
int i = 10;
int * p = &i;//int型ポインタpにiのアドレスを代入する
簡単。
char str1[] = "abcde";
char * str2 = "abcde";
上と下は同じでどっちを使ってもいい。
560 :仕様書無しさん2011/10/12(水) 14:53:39.30
>>543
直接メモリまで勝手に領域指定してくれるんだ(´・ω・`)
XPちゃんえらい(´・ω・`)
563 :仕様書無しさん2011/10/13(木) 02:24:18.16
>>543
>上と下は同じでどっちを使ってもいい。
嘘を垂れ流すな阿呆。
   *str1 = 'z'; /* OK */
   *str2 = 'z'; /* NG */
564 :仕様書無しさん2011/10/13(木) 03:03:11.28
>>563
つまり、どういうこと?
565 :仕様書無しさん2011/10/13(木) 09:51:08.52
>>563
いやむしろ逆だろ?
=が配列に内容をコピーするオペレータなら上も可だけどな。
567 :仕様書無しさん2011/10/13(木) 11:33:46.76
>>543
アクセス違反にならへん?
568 :仕様書無しさん2011/10/13(木) 12:32:38.68
>>567
日本語でしゃべれよカス
569 :仕様書無しさん2011/10/13(木) 22:20:54.31
>>563
初期値に文字列入れときゃ、その分の領域確保されてんじゃないの?
570 :仕様書無しさん2011/10/13(木) 22:54:37.52
>>569
後者はconst扱いされて、ROM領域に置かれるって、そんな世界もあるんだよ。
571 :仕様書無しさん2011/10/14(金) 00:26:35.81
>>570
ああ、それじゃダメだな
納得
578 :仕様書無しさん2011/10/15(土) 07:16:30.45
>>543
char str1[] = "abcde";
char *str2 = "abcde";

この二つの宣言方法の違いがわからんやつが多い事実。
どっちを使っても良いなんて教え方はしてはいけない。
582 :仕様書無しさん2011/10/15(土) 18:11:56.08
>>578
char str1[] = "abcde";
char *str2 = "abcde";


char str1[] = "abcde";が、
メモリ上に"abcde"+NULLの6バイト確保されて"abcde"+NULLのデータが入っている。

char *str2 = "abcde";が、
メモリ上に"abcde"+NULLの6バイト確保されて"abcde"+NULLのデータが入って、
 かつ、ポインタ変数用の領域確保されて"abcde"+NULLの先頭アドレスがデータとしてセットされる。
587 :仕様書無しさん2011/10/16(日) 09:43:21.53
>>584
コンパイラで最適化することも当然ありうるが、基本的に>>582の説明であってる。
590 :仕様書無しさん2011/10/16(日) 23:14:16.58
>>588
typedef使え

>>543
にマジレスしてる奴ってなんなの?
591 :仕様書無しさん2011/10/17(月) 09:31:50.08
>>590
ポインタを正しく理解していないバカが多いからだろ。
544 :仕様書無しさん2011/10/11(火) 21:37:14.45
mallocだのcallocだのreallocだのを理解して使えるのは、
職業プログラマ、趣味プログラマを問わず、1割もいないと思う。
ごく一部の人だけが、理解していれば済むものじゃないの?
残り9割の人は、必要がない限りは理解する必要はないし、
そもそも必要になる機会も少ないだろう。
548 :仕様書無しさん2011/10/11(火) 23:17:37.34
>>544
そもそもそんな輩は、プログラマとして必要無い。
足手まといに成るのがオチだから、他の仕事に就いてくれ。
553 :仕様書無しさん2011/10/11(火) 23:44:03.66
>>548
禿同
554 :仕様書無しさん2011/10/11(火) 23:45:55.22
>>553
お前はGCでも使ってろよw
545 :仕様書無しさん2011/10/11(火) 21:42:41.00
mallocを理解してないけど
メモリを確保したり出来ることは知ってる
546 :仕様書無しさん2011/10/11(火) 23:01:12.53
メモリーリークの原理すら分からず、デバッグ出来るのかなぁ?
547 :仕様書無しさん2011/10/11(火) 23:04:19.30
>>546
メモリーリークの原理を教えて
549 :仕様書無しさん2011/10/11(火) 23:19:33.31
>>547
ポインタによるコピーは「ここまで俺の陣地な。」を無視するんだよ。
隣ん家にある家財道具なぎ倒しても知らんぷりw
550 :仕様書無しさん2011/10/11(火) 23:25:42.79
>>549
それは俺でも理解している概念であって
原理じゃねえだろ?
555 :仕様書無しさん2011/10/11(火) 23:54:35.00
>>550
いや、それが真相だし原理だよ。
隣の家の所有者が誰か分からない所がまさになw
556 :仕様書無しさん2011/10/12(水) 00:00:34.61
>>555
実装もできないのに使ってるとw
551 :仕様書無しさん2011/10/11(火) 23:32:08.41
mallocの動作が、リニアな領域から要求サイズ以上空いてるブロックを指示すポインタを返すだけなので、以下省略
552 :仕様書無しさん2011/10/11(火) 23:41:42.09
>>551
そんなことは誰でも知ってるよ
K&Rにも簡単な実装があった。
557 :仕様書無しさん2011/10/12(水) 02:54:40.17
かなり昔、配列で領域取って、添字1から埋めてって
何故かフルだと動かないよって言われたっけか

0から埋めなかった理由は結局きけず仕舞いだった
558 :仕様書無しさん2011/10/12(水) 03:13:23.50
int a[100];
int *b = a-1;
int c;
for(c=1; c<=100; c++) b[c]=c;
561 :仕様書無しさん2011/10/12(水) 14:57:15.08
>>558
c=0.c<100だと?
559 :仕様書無しさん2011/10/12(水) 06:47:05.47
配列の最後の要素の一つ次の要素を指すポインタは、比較演算の式や加減算のオペランドとして利用できる
同じ配列内の要素を指すポインタ同士は、加減算できる
配列内の要素を指すポインタと整数は、その要素が存在している場合、加減算できる
ISO/IEC 9899:1999 (E) 6.5.6 Additive operator Semantics 8, 9

>558
ところで、配列の一つ前の要素を指す式は、ポインタとして有効なのか
また、アンダーフローしないといえるのか
576 :仕様書無しさん2011/10/14(金) 23:16:22.52
ジョブズってあの名言
「アイアム、ノージョブズ!」の生みの親じゃん
577 :仕様書無しさん2011/10/14(金) 23:48:05.11
ジョブズは商人で、Rは技術者だからな
客は、商人しか見ないだろ
579 :仕様書無しさん2011/10/15(土) 08:30:54.62
char str1[] = "abcde";
char const*str2 = "abcde";
こう教えるべきということか
580 :仕様書無しさん2011/10/15(土) 14:32:44.95
>>579
それも間違い。
const扱いされて云々もローカルルールだし、
本来スタートアップルーチンが全部RAM領域にコピーしてくれるのが本来の動き。
だから使い方として間違いという事もでも無い。

一番の違いはその変数名をsizeof()にかけて戻ってくる値。
581 :仕様書無しさん2011/10/15(土) 17:09:58.04
sizeofとか*演算子なしでは使わないだろ。

ポインタのサイズが問題になるような場合にテスト的にやるだけで。
583 :仕様書無しさん2011/10/15(土) 20:54:50.41
580>> 本来スタートアップルーチンが全部RAM領域にコピーしてくれるのが本来の動き。
すまんが、こんな仕様あったか?
585 :仕様書無しさん2011/10/15(土) 23:34:41.16
>>583
仕様なんて無い。
PCメインの変態プログラマのクレームで、そんなオプション付けたコンパイラなら知ってる。
584 :仕様書無しさん2011/10/15(土) 21:42:03.74
>582
後者はコンパイラの解釈に依存しないか?
586 :仕様書無しさん2011/10/16(日) 02:24:38.86
組込バカは自分の世界が狭いのを理解出来ずに物を言うからスルーしとけ
588 :仕様書無しさん2011/10/16(日) 10:11:46.12
ポインタがわかりにくいというよりCのポインタ関係の構文規則が分かりにくいということだろ。

int *p;
int *p[10];
int (*p)[10];
int *p();
int (*p)();
int *(*p)();
int (*p[])();
int (*(*p())[5])();
592 :仕様書無しさん2011/10/17(月) 17:45:50.54
>>588
上から順に解説お願い
589 :仕様書無しさん2011/10/16(日) 22:27:29.69
ポインタの挙動を理解できていれば、
Cの構文は調べるだけで済むものではないのか?

構文をど忘れしても、リファレンスを見たり、
他人に聞けば、それだけで解決だ。
594 :仕様書無しさん2011/10/17(月) 20:17:15.96
> int *p();      関数ポインタだろう
可変引数(規格によってはvoid)を引数に取りint *を返す関数の宣言

> int (*p)();     なんぞこれ
可変引数(規格によってはvoid)を引数に取りintを返す関数へのポインタ

> int *(*p)();     ・・・
... int * ...

> int (*p[])();    関数ポインタの配列かな
配列だからC99の構造体あるいは共用体を除いて空要素で
いや、グローバルなら宣言できるか

> int (*(*p())[5])(); ・・・
配列を返す関数(そのポインタも含めて)は書けないはずだが
直訳ならポインタの配列を返す関数へのポインタを返す関数
595 :仕様書無しさん2011/10/17(月) 22:58:22.10
>>594
ちがう

>> int *p();      関数ポインタだろう
>可変引数(規格によってはvoid)を引数に取りint *を返す関数の宣言
引数の数及び型が不明の関数(可変引数ではない)

>> int (*(*p())[5])(); ・・・
>配列を返す関数(そのポインタも含めて)は書けないはずだが
>直訳ならポインタの配列を返す関数へのポインタを返す関数
intを返す関数へのポインタの配列のポインタを返す関数
599 :仕様書無しさん2011/10/20(木) 06:07:03.43
>>594-595
「いつからC++ではないと錯覚していた?」
596 :仕様書無しさん2011/10/17(月) 23:12:26.38
intを返す関数へのポインタの配列のポインタを返す関数へのポインタのポインタを格納した配列のポインタを返す関数へのポインタを返す関数
597 :仕様書無しさん2011/10/18(火) 00:48:40.39
・P2Pばかりやるからポート開放とかできる。ただしポートが何なのかはよく分からない
・タイピングは人より少し早い。ただし数字や記号などは見ないと打てないという中途半端ぶり
・C言語を習得しようとしたがポインタ手前で既に挫折。そのくせ、2ちゃんねるのプログラミングスレではfor(i=0;i<=100;i++) {printf("逝●てよし\n");}みたいな
書き込みをして自分はプログラミングを知ってるんだぞとアピールする(何故かfor文を使いたがる)
・office系ソフトの知識はとても中途半端。excelでセルの足し算だとか簡単な関数などは知っているが、相対参照とか言われても理解できない
・デスクトップ改造とかに興味があるからレジストリを少しいじれる。だけどレジストリが何なのかは知らない。
・パソコンの大先生っぷりをアピールをするために、ネットワーク不調の際は「ping」とか「ipconfig」をDOS上から打って調査しているフリをする。
ただし理解できる情報はIPアドレスだけ。
598 :仕様書無しさん2011/10/18(火) 22:49:16.56
ポインタなんて、基礎だけ押さえておけば事足りる。
パッと見て理解できないような難解な処理や、
ほとんどパズルのような不可解な処理は、そんなコードを書く方が悪い。

と思ったら、ポインタの基礎に到達する前に挫折する人が多い。
601 :仕様書無しさん2011/10/21(金) 09:18:40.43
構造体変数配列のポインタにインクリメントするとどうなるの?
603 :仕様書無しさん2011/10/21(金) 21:35:23.19
型が合ってれば、構造体のサイズ分アドレス加算されるだろ。
604 :仕様書無しさん2011/10/24(月) 21:57:35.57
a+++++b
まだ我慢できても...。

// これでエラーを出してくれないのに腹が立つのだが。
a*****b
606 :仕様書無しさん2011/10/25(火) 00:10:50.56
>>604
まぁ技術論的な意味で遊びたくなるのはわかるが、
実際の仕事なら他人が読めるように配慮するんで、んなことで困ったことは無いな。

というかそれに近いことを書いた奴は俺が質問責めにするか、
俺以外の誰かが質問責めの刑に処すが。
他人に出すもので遊ばせられるほどの余裕は、さすがに無い。
607 :仕様書無しさん2011/10/25(火) 01:30:59.85
includeをおまじないと言ってみたり
変数をハコに例えてみたり
ポインタを難解なものだといってみたり
オブジェクト指向をいぬがワンと言ってみたり

キリストのように譬え話をするくらいなら
608 :仕様書無しさん2011/10/25(火) 09:32:44.04
>>607
変数=ハコ

はバカがイメージするには必要。
609 :仕様書無しさん2011/10/25(火) 22:35:10.57
includeに限らず、おまじないなんて言う人は信用できないよ。
自分が理解しておらず他人に説明できないから、
そんな事を言ってごまかしているように見える。
615 :仕様書無しさん2011/10/26(水) 14:23:29.00
>>609
include -> 仮宣言 -> ライブラリ -> リンカ
-> ELF、PEバイナリ -> アセンブリ・マシン語 -> ローダ …

こうやって説明すればいいんですね、わかります。
610 :仕様書無しさん2011/10/25(火) 23:03:22.81
だよなぁ。
プリプロセスぐらいはちゃんと説明できにゃぁ半人前以下だよなぁ。
612 :仕様書無しさん2011/10/26(水) 01:55:45.35
最初は俺も変数=箱で理解したぞ
後々、アドレスや領域確保とかわかって行けばいいだけの話
ただ、ポインタ手前まで学習してるのにCの概念が理解できなくて例え話で表現するのはない
614 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/26(水) 13:11:10.56
…#includeもポインターも構造体もDarkBASICにあるからな。

わざわざC言語にこだわる理由が分からんw
616 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/26(水) 14:25:07.19
…ホント、DarkBASICって使いやすいぞw

グローバル変数もローカル変数もちゃんとある。
617 :仕様書無しさん2011/10/26(水) 14:45:54.47
>>616
ソースも仕様もひどすぎてワロタw
まあ専門分野特化だからいいんじゃないか?w
618 :仕様書無しさん2011/10/26(水) 14:59:39.93
初めてBASICに触れた時は、変数=箱だと思っていた。
しかしすぐに、そうではないと思い知らされる事になった。

なぜかと言うと、高速動作させるためには、使用頻度の高い変数を先に定義するというテクニックがあったため。
インタプリタは変数の値を、格納領域の先頭から順番に探していく。
そのため、先に定義された変数ほど、入出力が高速になった。

また、文字列は専用のエリアに格納され、それを超えるとエラーになる仕様もあった。
他の領域が減るが、文字列領域を拡大する命令もあった。

どうしても変数=箱という認識を捨て、メモリを意識するようになった。
619 :仕様書無しさん2011/10/26(水) 16:25:44.95
昔のBASIC?
ああいう時代のは、嫌でもメモリの存在を意識せざるを得ない。
620 :仕様書無しさん2011/10/26(水) 17:02:33.29
Javaはスレッド(同期)すら簡単にできる処理系だけど、
そのJavaですらWeakReferenceやRMIなんかを使う年頃になると、
低レベル処理の知識が必要になるわけで…。
621 :仕様書無しさん2011/10/26(水) 17:59:31.33
Javaは、低レベル処理なんて上位1%のプログラマが知っていれば良い。
残り99%は、上位1%が書いたメソッドを呼ぶだけでいい。
内部の詳細など知る必要なし。
622 :仕様書無しさん2011/10/26(水) 18:13:20.58
ポインタを別に使わなくてもいいけど、
ポインタを理解することは必要だと思う。
C言語で別に仕事しなくてもいいけど、C言語を
勉強することはけっして悪いことではない。
むしろJavaから始めるのは納得しかねる。
624 :仕様書無しさん2011/10/26(水) 18:56:39.75
Javaから始めるのって大変そうだ。
main から始まるのはCと同じだが、Javaの場合は public だの static だのが付いている。
さらに、その main 自体がクラスという枠の中にある。

最初のうちは、それらを何もかも、おまじないとして教えてるんだろうか?
おまじないだと言ってごまかさず、ちゃんと意味を理解させている場合は、
何もせず終了するプログラムを書くだけで、数日の学習が必要になりそう。
628 :仕様書無しさん2011/10/26(水) 19:58:46.92
>>624
変数の寿命や影響の範囲を教える際にも同様の問題が起こる。
JavaだろうがCだろうが正しく理解するには、ある程度使えるようになってから、もう一度基礎に戻る努力が必要
629 :仕様書無しさん2011/10/26(水) 23:20:36.85
>>624
JavaのWeb開発要員として量産されてる連中だと、mainなんて書かないし存在も知らないよ。
フレームワークや各種のライブラリにべったり依存し、
その枠内だけで開発する、最低限のノウハウだけを叩き込まれてる。

一見すると、フレームワークを使いこなし迅速な開発ができる優秀な技術者に見える。
ところがごく基本的なアルゴリズムも知らず、フレームワークの枠外の事はほとんどできない。
数年前までは、VBしかできない人が無能だと言われてバカにされていたが、
この手のJavaプログラマはそれよりはるかに劣ってると思う。
631 :仕様書無しさん2011/10/27(木) 22:54:47.03
>>627
ゲームに限らず直接データ触るときはポインタの方が可読性良いと思います。

>>629
そんな考えだとそのうち自分の矮小さに気づいて発狂するぞ。

アルゴリズム云々は飽くまでプログラマとしての哲学であって、
技術者全般の優劣を付けるための物ではないだろ。

いくらアルゴリズムに詳しかろうが枠内で済んでいる限り、
そのフレームワークを使えない奴はそいつより(一般的に)無能だよ。
634 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/28(金) 09:33:36.96
>>631
…いまどきはゲームですらポインターは使わないからなw

もしかしてAPI直接呼び出すC使ってんの?

DarkBASICならAPIも命令群に包括されてるからその必要もない…か。

つくづく遅れたカワイソウなヤツだ(笑)
635 :仕様書無しさん2011/10/28(金) 13:01:45.18
>>634
必要であれば迷わず使えよ。
メモリプールから切り出しするのにポインタ使わずに実装するほうが死ぬだろ。

スペック的にjni必須なのにJavaだけで対処しようとする糞野郎と一緒。
てめえの自己満足なんて二の次にしろ。
636 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/28(金) 14:40:13.56
>>635
…遅れた言語(C言語(笑))なんて使ってるから小さいコトにこだわるミジメなヤツになるんだよw

ほらっ、早くっ、DarkBASIC使えよ。

オマエの役に立たない道具(アレw)も立つかもよ?(ゲラゲラ
641 :仕様書無しさん2011/10/28(金) 20:32:41.79
>>629
フレームワークべったりの人達は「フレームワークと心中する」と表現されてたな。
それ以外の知識が皆無なので、そのフレームワークが廃れると同時に、
できる事がなくなってしまい業界を去っていく。

何か1つできれば、必ずしも、他のも短期間で簡単に習得・移行できるってわけじゃない。
COBOLだとか旧VBだとかのプログラマが、そられの言語の需要が減ると、
他のに移行できないまま仕事がなくなり、辞めていく人がゴロゴロいたのがいい例だ。
625 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/26(水) 19:01:55.45
…なるほどな。

そういった煩わしい初期設定をしなくても書けるのがDarkBASICで、DirectXの初期設定すら
デフォルトでやってくれてるから簡単で使い易い。

APIを知らなくてもいいから初心者でも簡単に3Dポリゴンのプログラムが作れる。
627 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/26(水) 19:32:37.16
ポインターなんてゲームぐらいしか使わないだろ(ゲラゲラ
630 :仕様書無しさん2011/10/27(木) 22:52:45.82
文章や図を見て理解しようとするより、実際にコードを書いて
デバッガで挙動を追う方がはるかにわかりやすい。
でも多くの人が、コードを書く前に理解を諦める。
632 :仕様書無しさん2011/10/28(金) 00:38:10.02
>>630
ガシガシ動かせば体感的に理解できて良いのだけれど、老害どもは先に完全な理解を求めるからな。
わからないから進めなくて、進めないからわからないジレンマに陥る。
633 :仕様書無しさん2011/10/28(金) 06:31:34.76
確保のしかたが配列宣言だろうがポインタ定義のnew/mallocだろうが、シンタックスシュガーだから、あまり気にするなと新人には言う。
637 :仕様書無しさん2011/10/28(金) 15:09:04.53
技術力がなかったり、極一部の技術しか使えないやつに限って、
ポインタは不必要とか
オブジェクト思考不要、関数だけで事足りるとか、
Ruby以外の言語はクソとか、
そういう完全否定したがるんだよね

ようは思考能力が無いだけなんだけど
638 :仕様書無しさん2011/10/28(金) 15:11:34.70
ポインタが不要だという人にはDIYショップのねじの種類を調べて来いと言えばいいんじゃないかな。

ねじだけで棚いくつもある。
639 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/28(金) 15:31:41.92
…んで何か完成品作ったのか?w

オレ様は近々予定があるけどな(ゲラ
640 :仕様書無しさん2011/10/28(金) 20:02:39.97
完成品なんて表現を使ってしまう時点で、
プログラムを組んだことがある奴の発言とは思えないな。

というよりネタで言ってるとしか思えない。
643 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 00:04:25.48
>>640
…だってさ、” 全部入り ” の 「 DarkBASIC 」 の前ではポインターもCも無意味だろw

オマエら会社の中に居過ぎて10年ぐらい遅れてるぞ(ゲラゲラ

# 気が付いたらお払い箱…カワイソウにw
644 :仕様書無しさん2011/10/29(土) 00:12:32.94
>>643
C#とかF#の扱いが不明だな。あれも(Windowsで出来ることなら)全部入りだが?
VC++でも全部入りだな。

645 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 00:17:22.28
>>644
…全部入りで定価1万円のDarkBASICと、10万円以上するCだとミジメだよなw

しかもAPI丸出し(ギャハハ!!wwww”
646 :仕様書無しさん2011/10/29(土) 00:21:58.78
>>645
1万円払ってるのか。Express Edition使えばタダじゃね?
647 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 00:24:57.78
>>646
Cで書いたプログラムは汚くて読めないw
648 :仕様書無しさん2011/10/29(土) 00:27:41.31
>>647
慣れてない言語を見たら何でも汚く見える。
例えば俺はPython見てもイマイチ意味が分からない。
642 :仕様書無しさん2011/10/28(金) 21:36:36.54
さすがにもうwebの仕事は遠慮したいわ
どうしても短納期、低価格のため、デスマになりがち
デスマに至らなくても利益は少ないため、管理職やマネージャーにとっては
利益目標の達成が難しくありがたみが少ない
ヒラ社員にとっても所属部署の売り上げが少ないと、ボーナスに響く
649 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 00:36:04.49
ほらね〜♪”
650 :仕様書無しさん2011/10/29(土) 00:39:01.77
>>649
悪いが俺はDarkBasic読めないのでDarkBasicクソって言えるよ。
お前がCクソって言うのと同じことだが。

まぁ、目的が達成できるなら何使ってようが知ったこっちゃねえよ、俺は。
651 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 00:43:34.04
>>650
オマエの目的って、口先を軽ぅ〜く動かすだけじゃん!(大爆笑)
652 :仕様書無しさん2011/10/29(土) 01:05:07.77
>>651
この場合だと口じゃなくてキータイプだろうな。
お前が何をどう考えているかを理解するのが目的だ。暇人なんでな。

とりあえずお前は

「DarkBasic使う俺と同調してくれる奴以外アホ扱いすべき」という主観的意見を持つ奴

だってことは理解した。
653 :仕様書無しさん2011/10/29(土) 01:53:27.32
理解する必要なんて無いんじゃねえかな。
コテつけて煽りをやるバカなんだから、NGワードに放り込んじゃえばそれで済むし。
読むに値する発言なんて何一つしてないしね。
654 :仕様書無しさん2011/10/29(土) 02:15:33.31
ポインタって何が難しいの?
ポインタ自体が難関なのではなく、パズルのような複雑化したコードや、
可読性無視のゴチャゴチャしたコードを書く人がいるため、
それを理解できなくて難しいと言ってるのではないの?
655 :仕様書無しさん2011/10/29(土) 02:27:35.34
難しいべ。nearとかfarとか区別付けないといけない時代もあったし。
656 :仕様書無しさん2011/10/29(土) 03:50:10.07
ポインタの考え方はすぐわかるんだと思う。
誰でもポインタがどっかのアドレスをさして、
値を取り出すことができて、


その文の書き方に問題があるんだと。
signal関数のプロトタイプとかの。
void (*signal(int sig, void (*func)(int)))(int);

forとかifとかと違って
ポインターは実用性の無いコードで説明しても
実感わかないyい
*a++=*b++;
657 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 05:35:11.33
>nearとかfarとか区別付けないといけない時代もあったし。

アセンブラの表記に合わせるために苦労してたんだろうな(大爆笑)

…もちろんアセンブラできるよなw

できなきゃCで書く意味ないからな(ゲラゲラ
658 :仕様書無しさん2011/10/29(土) 06:07:24.15
nearはいいぞ。
プログラムやインデックスが小さくなるので、キャッシュメモリに収まる。
659 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 06:08:50.96
>>658
何しろプロシージャーの定義をそのまま使い回してるだけだからな(大爆笑)
660 :仕様書無しさん2011/10/29(土) 06:13:52.41
>>659
ポインタ変数を使ったことがないのかお前
661 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 06:17:03.76
>>660
…CもPASCALも取り込んでしまったDarkBASICでは、ポインターは使われないものとして
  認識されている。

オマエら、古いものに縛られて思考が硬直してるぞ(ゲラゲラ
664 :仕様書無しさん2011/10/29(土) 07:08:43.10
>>661
んじゃ, DarkBASICでOSのカーネル書いてみて
662 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 06:21:03.97
…古い世代では、6809と言うCPUがそれに相当して、インダイレクトアドレッシングが
  使われなくなったのと同じだろうな。

学者の机上理論は役に立たなくて実際には使われない。

オマエらは化石を崇拝しながら終わっていく運命なんだよw
663 :仕様書無しさん2011/10/29(土) 06:55:41.23
>>662
応用の利かないお前みたいなゴミこそ消えろ
665 :仕様書無しさん2011/10/29(土) 08:35:24.69
DarkBASIC
このOOPの時代にコマンド型の大量の命令群。
でも中身は全てBASIC。変数スペルミスが致命傷。
コンパイラも…基本型にすらバグがあったりする。

どう考えてもお遊び用だろ。Cより優れているとかアホですか?
667 :仕様書無しさん2011/10/29(土) 12:08:15.73
ポインタを理解できないレベルって参照も使えんのかなぁ。
ポインタを使いたくない、使えない人って参照が使える言語に行ったのか。
671 :仕様書無しさん2011/10/29(土) 14:14:12.95
>>667
参照も怪しい人の方が多い気がする。
実態を複製したいのに、参照だけしか複製せず、
予想外の挙動を招いて混乱してる奴が絶えない。
要するに、シャローコピーとディープコピーの違いを理解してない人達なんだけど。
686 :仕様書無しさん2011/10/29(土) 22:48:45.98
>>667
学生時代ポインタ周りのあれこれに付いて行けなくなってperlに逃げた

いや、概念的なところは分かってるつもりだけど
んじゃそれを上手いこと使ってコードを書けと言われると
必ずsegmentation faultを起こす
668 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 13:16:03.19
…そんな小さいコトにこだわってると、DarkBASICでは笑い者だなw

そんなにメモリを直接弄りたければアセンブラやれ(ゲラ
669 :仕様書無しさん2011/10/29(土) 13:40:23.08
>>668
だからDarkBASICでOSのカーネル書いてみろや
670 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 13:45:31.02
>>669
ネット弁慶御苦労w
672 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 15:35:10.97
つまりメモリとレジスタの区別が付いてないんだなw
673 :仕様書無しさん2011/10/29(土) 15:42:23.47
>>672
つまりってどこが?
説明してみろ
676 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 16:04:31.64
…いやぁ、そういうコトだよ。

アセンブラができないのにCなんてやっても意味がないと言うコト…。

素直に全部入りのDarkBASICをお勧めするよ。
677 :仕様書無しさん2011/10/29(土) 16:09:24.45
>>676
DarkBasicでDLL書けるの?
678 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 16:11:43.94
>>677
何のDLL書くの?w

たいていのモノは揃ってるぞ(ゲラゲラ

あ、完成品作れない痛いヤツだったな…
680 :仕様書無しさん2011/10/29(土) 16:14:00.12
>>678
スクリプト言語で利用するためだよ。

まあいいや、ぐぐったら出てきたし。

Q7.DarkBASIC Professional日本語版でライブラリやDLL(Dynamic Link Library)を
作成することはできますか?
A7.内蔵されているLOAD DLLコマンド、CALL DLLコマンド等を使用してC++で作成したDLLにアクセスすることが可能です。
↑できないならできないとゆえ!



ようするに>>678はGoogle先生には敵わないんだよ。Google先生さえいれば>>678なんか必要ないんだよ。
682 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 16:19:30.22
>>680
じゃあオマエにDarkBASICは必要ないなw

JAVAでもPHPでもHTML(笑)でもお好きにどうぞ。

やっぱ口先人間って知れてるね…
679 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG 2011/10/29(土) 16:13:59.99
それに下手にCで書くよりDarkBASICで書いたほうがフツーに速いしな…。

生産効率は言うに及ばず。

圧倒的にDarkBASICに軍配。
681 :仕様書無しさん2011/10/29(土) 16:18:16.07
ゲームツクールいじって喜んでるやつ相手にしてどーするw
683 :仕様書無しさん2011/10/29(土) 19:00:02.97
googleセンセイは偉大なダブルポインタ。
knowledgeの可変ポインタの配列を列挙してくれる。
685 :仕様書無しさん2011/10/29(土) 21:21:18.63
同じBASIC系言語だと、初心者向けと言われるVBでさえDLLを開発可能。
その前身である、DOS時代のQuickBASICでさえ、同様の機能を提供するLIBを開発可能だった。
有益だからこそ、初心者向け開発言語でも対応してるのだろう。
ゲームツクール利用者は、その有益性を理解できる段階に達していないから、
対応しなくてもいいやって事なんだろう。
687 :仕様書無しさん2011/10/30(日) 02:20:02.21
使ってることを意識させないだけなんだよなぁ

javaでnewするのが煩わしくて悩んだっけ
mallocして適当な型ポインタに突っ込むとかも出来ないし

多分根本の考えが間違ってるだけだろう
689 :仕様書無しさん2011/10/30(日) 12:31:49.79
>>◆TXFAX7cidQpG
そういう宣伝手法はこれから捕まるぞ。
691 :仕様書無しさん2011/10/30(日) 13:40:44.38
ポインタ以前に近頃は設計が出来なかったり、客とまともに打ち合わせすら出来ないゴミが多すぎて困る…。
693 :仕様書無しさん2011/10/30(日) 13:56:15.41
何こいつ?
今時 vipper でも使わないような恥ずかしい AA 張り付けて...
695 :仕様書無しさん2011/10/30(日) 14:41:07.80
情報系の学校で学んだ人でも、過半数はFizzBuzz問題がわからないんでしょ?
ポインタなんてわかるのは、1〜2割もいないんじゃない?
697 :仕様書無しさん2011/10/30(日) 15:40:25.89
こいつの名前は福盛だよ
あちこちで嫌われ者になっているね

プロフィール
http://janjan.voicejapan.org/living/0907/0907297894/1.php
698 :仕様書無しさん2011/10/30(日) 15:42:49.82
プロフィールで本人も言っているように、真性外基地なんで本気で相手するのは無意味だな
699 :仕様書無しさん2011/10/30(日) 15:50:26.05
反論できないときはAA貼り付けてごまかすのがこいつの特徴なんだな?
700 :仕様書無しさん2011/10/30(日) 17:13:49.93
TPPへの参加で無能な奴は全て駆逐されるから安心しろ
超安いが超無能な奴等に置き換わるだけだがな

マイクロソフト ワイヤレス ブルートラック マウス Arc Touch Mouse RVF-00006
マイクロソフト ワイヤレス ブルートラック マウス Arc Touch Mouse RVF-00006