- 1 名前:デフォルトの名無しさん [2007/02/11(日) 14:42:17 ]
- ポインタいらね
- 136 名前:デフォルトの名無しさん mailto:sage [2007/10/25(木) 12:18:44 ]
- >>135 爆釣オツぅぅ!!
- 137 名前:デフォルトの名無しさん [2007/10/25(木) 13:22:34 ]
- ポインタなんか要らないと言う話
homepage3.nifty.com/mogami/diary/d0710.html#242
- 138 名前:デフォルトの名無しさん mailto:sage [2007/10/25(木) 13:25:05 ]
- コンパイラの方が賢いと思うやつのソースは糞
- 139 名前:デフォルトの名無しさん mailto:sage [2007/10/25(木) 13:59:07 ]
- >>136
どこが釣なんだ?普通だと思うが。 >>137 が釣というのならわかるよ。 ただ、本人がいないところで blog なんか吊し上げても しょうがないと思うけどね。
- 140 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 10:35:36 ]
- 137のリンク先の痛さからすると、本人かも知れんぞw
- 141 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 00:28:10 ]
- ▼ ポインタなんか要らないという話:
なんで最近の言語ですら、みなポインタを持っているのかな。 どうも本物のプログラムを書くにはポインタ(あるいは参照)が 必要であると思われているみたいだけど、それは違う。 ポインタが必要と言うのは要するに速さの問題だ。 昔のコンパイラ技術では人間がポインタを使っていろいろ 最適化する方が速かった。 しかし今なら、この手の機械で追跡可能な最適化は 機械にやらせたほうが速くなるだろう。 ポインタを人間に触らせてしまうと、データのメモリのストアの仕方が コンパイラの自由にできなくなる。 (レジスタに置くか、ヒープか、スタックか。スタックならどこか。 確保するのは呼び出し側か、解放するのは呼ばれた側かなど。) これによって最適化がさまたげられるからだ。
- 142 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 01:35:29 ]
- 世の中のソフトってパソコンアプリばっかりじゃないからねぇ
- 143 名前:デフォルトの名無しさん mailto:sage [2007/11/13(火) 17:31:13 ]
- >>141
うーむ、ポインタを触るからこそ、CとかC++は何でもできるんじゃねぇの?
- 144 名前:デフォルトの名無しさん mailto:sage [2007/11/13(火) 18:16:11 ]
- 何でもできるってのが、なんかの機能を実装できるって意味なら
ポインタは全く関係ない ポインタの存在意義は、「ポインタを使ったコーディングが出来る」以上でも以下でもない マクロとかテンプレートとかと同じ
- 145 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 00:16:59 ]
- Cなんて、アセンブラで書くのカッタルイから開発されただけだからね。
アセンブラを知ってる人が使う言語なんだよね。 何か最近はアセンブラのアの字も知らない青二才がいい気になってるけど、 ポインタとかそういう事だから分からない方がおかしいのさ。 ポインタ知りたいならアセンブラやんなきゃどうしようもない。 なんてった、超低級言語から引きずってる概念だからね。 反面、もっと言語として高級なものならポインタを全く気にする必要は無い。 いやポインタと言う概念すら出てくる余地がない。
- 146 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 00:26:18 ]
- >>145
かったるいというより portability が大きいと思うぞ。 あと、assembler なんか知らなくても C もポインタもわかるよ。
- 147 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 01:35:04 ]
- >>146
ポータビリティーなんて後付けだよ。 インラインアセンブラなんて初期の頃から付いてるんだから。 ポインタの本来の意味は、アドレスレジスタだね。
- 148 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 12:18:35 ]
- >>148
経緯的には後付けなのかも知れんが、C が広まった 理由としてはポータビリティーは大きいと思うなぁ。
- 149 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 11:47:05 ]
- メモリを直接弄る場合にゃ、ポインタは分かりやすい。組み込みだと、ポインタがないと死ねる。
でも、普通のアプリ作る場合には、ポインタは邪魔だよね。
- 150 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 06:14:53 ]
- 専門書読むのに索引あると便利だが、
マンガ読むときには必要ないって感じだな。
- 151 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 07:48:21 ]
- どちらかと言うと、専門書と言うよりはマニュアル本(或いはもっと極端に規格書)だと思うぞ。
- 152 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 11:54:46 ]
- うんにゃ、電話帳よ。
- 153 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 22:32:06 ]
- ドット絵とドローツールとか
- 154 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 00:01:53 ]
- 基底クラスAの派生クラスB, Cがある。
派生クラスのオブジェクトを基底クラスAのリストに入れて取り扱う class A { }; class B: public A{ }; class C: public A{ }; void func() { list<A*> vec; vec.push_back(new C); vec.push_back(new B); } これをポインタ無しでかけるのか? ポインタ不要論を唱える意味がわからん。
- 155 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 00:35:43 ]
- JavaやC#でも同様の記述はできる。それも難解なテクニック要らず楽勝で。
参照という、ポインタに非常によく似た、というかそれを覆う概念ですがね。 ポインタよりも遥かに安全。
- 156 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 01:13:21 ]
- >>155
C++でどうやるんだと聞いている。 JAVA, C#以前にC++が出た頃からポインタ不要論ってのはあるんだよ。 ポインタ不要論を唱えている奴の意味がわからん。
- 157 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 22:59:25 ]
- ポインタ不要論を唱えてた奴等が Java とか C# とか作ったんじゃないのか?
- 158 名前:デフォルトの名無しさん [2008/02/14(木) 03:26:02 ]
- C→C++やってるとポインタの知識は必要不可欠。
javaはポインタが無いから始め混乱したよ
- 159 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 11:44:58 ]
- 違う環境、違う言語から移植する時にウンザリする位かな。
実際、最初からC/C++でアプリ作っててポインタの扱いに困る状況ってあまり無いじゃん。 "ポインタ=怖い"のイメージばかり先行してる気がする
- 160 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 16:46:49 ]
- >>159
pointer arithmetic しだすと結構わかりにくいコードになりやすい と思うけど。10年位前に自分で書いたコード見ると結構難しかったりする。 そのころは結構ポインタ結構気に入ってたからな… 最近あまり pointer 振り回さないけど。あと、C++ だと iterator を使うこと多い。これの方が安全かな。C の時代より pointer 使うこと 全然減った。
- 161 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 17:20:18 ]
- 今時ファームとかじゃなきゃ直でポインタ操作なんてしない罠
フレームワーク使ってたらクラス実体の位置ぐらいの意味しかない
- 162 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 13:46:04 ]
- ポインタ不要論者って、Cのあれが不要って言っているだけで、
Java/C#のように、制限的にして使うのは認めているの?
- 163 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:30:05 ]
- 生ポインタの駄目な点
・長さがわからない ・配列かどうかもわからない ・C++ならキャストしただけでアドレスが変わる ・ポインタのポインタを使わないと共有オブジェクトのNULLチェックが… 生ポインタの利点 ・インターフェースを使える 修正、追加よろ
- 164 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 21:19:43 ]
- 寿司食いたいフフフフフフフフフフフフフフフフフフフフフフフフ
- 165 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 20:58:55 ]
- >>163
> インターフェースを使える どういうこと?
- 166 名前:デフォルトの名無しさん [2008/06/02(月) 03:43:04 ]
- C言語なら俺に聞け(入門篇) Part 29
pc11.2ch.net/test/read.cgi/tech/1212329099/
- 167 名前:デフォルトの名無しさん [2008/06/02(月) 18:31:48 ]
- >>162
そういうレベルじゃなくて、ポインタが理解できないんだよ(涙
- 168 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 18:33:45 ]
- >>167
(何かを)ポイントするものです。
- 169 名前:デフォルトの名無しさん [2008/06/02(月) 18:59:36 ]
- 構造化アセンブラだとおもえ!
- 170 名前:デフォルトの名無しさん [2008/06/02(月) 19:04:05 ]
- >>163
生ポインタ・・・ハァハァ、フェラチオみたいでそそる
- 171 名前:デフォルトの名無しさん [2008/06/04(水) 16:37:21 ]
- **になると辛すぎ(涙
- 172 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 00:13:08 ]
- ポインタ無いとニンテンドーDSの開発できねぇ
- 173 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 01:38:20 ]
- >>165
抽象クラスを継承してみそ
- 174 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 01:43:26 ]
- C++ならstatic_castがあるから、あまりポインタこわくないんだがCだと危険なキャストしかないからなぁ…
Cでのポインタの利用は少し自信が無い
- 175 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 23:06:04 ]
- DWORD AddressOfNameOrdinals
にWORD*でアクセスすると正常に動作するのにDWORD*だと動かないばかりかDependency Walkerに突っ込むとBSOD なんなんだよ
- 176 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 00:31:04 ]
- WORD*でアクセスって何だよ
- 177 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 05:31:09 ]
- つーか、何でDWORDに対してDWORD *でアクセスすんのよ?
- 178 名前:デフォルトの名無しさん [2008/06/06(金) 13:49:58 ]
- DWORD * をインクリメントして、どうこうって操作なんて、実際やらんよなぁ
- 179 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 23:53:54 ]
- ドトネトの仕事ばっかりしてたら、ポインタ宣言の仕方忘れた。
- 180 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 13:07:10 ]
- void (*signal(int signum, void (*handler)(int)))(int);
うをりやー void signal(int signum, void handler[1](int))[1](int); ほら、簡単でしょう?
- 181 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 13:09:32 ]
- void signal(int signum, void handler[*](int))[*](int);
なんか、こういう記法を作ればいい気がしてきた。C[*]記法?
- 182 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 20:54:21 ]
- >>181
これじゃだめだったっけ? void signal(int signum, void handler[](int))[](int);
- 183 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 21:56:16 ]
- courses.cs.tamu.edu/rabi/past-projects/00c/Group3/libs/stepscanchar.c
> char stepscan[](int port1, int port2, int steps, int direction, int readings, int encodport) えーっとこれは、、 > char scans[140]; : > return scans; 大丈夫なのかw
- 184 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 22:00:49 ]
- ポインタ返しとかを考えると、もうなんか
char stepscan[](...) char stepscan(...)[*] stepscan(...)[*] : char こうしなきゃダメなんだろうかとか思ってしまう
- 185 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 00:27:15 ]
- 今時4GBくらいメモリ積んでることも余裕なので、一般的な32ビットCPUの全空間丸ごとアクセス可能な状態。
ということは別にNULLだろうがオンメモリなんだぜ。 というか、まあアドレス0000にRAMがあるようなシステムだと、NULL==(void*)0と定義してしまって、NULLを特別扱いすると、 RAMの使用範囲が狭まってしまうな。
- 186 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 00:32:44 ]
- そこは仮想メモリでアドレス空間を好きに動かせばいい。
- 187 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 00:35:27 ]
- >>185
それ65系とか68系だね?
- 188 名前:デフォルトの名無しさん mailto:age [2008/06/13(金) 05:39:11 ]
- ストラックポインタ最高!
- 189 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 07:54:35 ]
- ポインタは死にません。終了。
- 190 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 08:15:43 ]
- ポインタは死んだ
- 191 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 08:40:49 ]
- ヽ( `ω´)ノ死にません!
- 192 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 09:09:01 ]
- ポインタは死んだ。ヌルポ(笑)
- 193 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 02:11:28 ]
- >>192
ガッ!
- 194 名前:デフォルトの名無しさん [2008/06/15(日) 07:52:10 ]
- それよりargがアホ
- 195 名前:デフォルトの名無しさん [2008/06/15(日) 08:34:22 ]
- 偽装請負を強制する派遣先は倒産させたほうがよくないか
life9.2ch.net/test/read.cgi/lifesaloon/1213325765/ find.2ch.net/?STR=%B5%B6%C1%F5%C0%C1%C9%E9&COUNT=50
- 196 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 06:18:52 ]
- ポインタテラ便利
Objective-Cやったらわかる。
- 197 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 07:56:57 ]
- ポインタは乳首
生きる
- 198 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 15:13:45 ]
- 「ハッカーズ大辞典」にcharの読みはチャーって書いてあった希ガス。
- 199 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 22:13:23 ]
- この感じ、charか!
|

|