(;ν;)「ポインタが分からない…」 ('ん`;)「ポインタが分からないということが分からない」
1 :
番組の途中ですがアフィサイトへの転載は禁止です:
C言語入門者がポインタで躓く3つの理由
ポインタってのは理解してしまえばそんなに難しいことでは無いと思うんだけど、
ここでプログラミングが苦手になってしまう人ってのはそれなりに居るらしいです。
(抜粋)
CPUとメモリの関係が理解できていないのが、原因なのかなーと思っていたりします。
プログラムって言うのは小さな命令の集まりなんだけど、コンピュータでプログラムを実行するときには、
これらの小さな命令を順番に実行していくわけです。
でこれらの小さな命令がどこにあるかって言うと、
メモリっていうところに保存されててそれぞれに番地が振ってあるわけです。
でプログラムで計算した結果ってのはどこかに保存しなきゃいけないわけなんですが
この保存先もやっぱりメモリなんですね。
つまり同じメモリなんだけど、ある番地には小さな命令が入っててある番地にはデータが入ってる。
わかってる人には「あーそうだよね」で済みそうなところなんだけど、
プログラミング初心者には,まずここで????ってなってしまうのかもしれません。
そーす
http://kur.jp/2008/07/15/c/
r' ⌒ー、 r´⌒ー、
{ }__{ }
ゝ_/ 〈十〉 \_ノ´
/ :::::::::::::::: \
/ <●>::::::<●> \.
| (__人__) | 我が名はインフィニティ
\ ` ⌒´ / 無限のメモリーなり
/ \
_|\∧∧∧MMMM∧∧∧/|_
_/_ __ __ ── ヽ| |ヽ ム ヒ
/ │ / ─┬─ | ̄| ̄ 月 ヒ
/ _/ / イ ─── _/ イ /| ノ \ ノ L_い
3 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 22:51:13.25 ID:nJDsjv3/0
普通のリーマンがC言語勉強する意味ってある?
4 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 22:51:53.21 ID:zu1+QZpH0
2008/07/15
5 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 22:52:35.28 ID:fMEYb8qr0
住所と地図だっての
6 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 22:53:05.94 ID:rmg1eCW80
int *p;と書いてる奴はアホ
int* p;と書くべきだ
そんなに難しいか?
8 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 22:54:16.94 ID:rdUIUp+G0
URLみたいなもん
>>3 普通のリーマンはExcelVBAだろ。
Cなんてどこで使うんだよ。
10 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 22:56:57.68 ID:AXTeYGeC0
白矢印ってゆえよ
12 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 22:58:31.97 ID:kzaMjDDf0
メモリとアドレスとポインタと部屋とYシャツと私
13 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 22:58:38.52 ID:/y1NgGMd0
ポインタが難しいというのは組み込みやってる奴らの陰謀
難しいということにしとけば自分たちは楽して飯食えるからな
具体的にどういうときに使うのか教えろよ
15 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 22:59:12.81 ID:nNSAHNx10
参照とポインタの違いがわからない
16 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:00:15.19 ID:/4LDDJhZO
なんか今は性能に任せてごり押ししてる印象
17 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:00:56.49 ID:CXpozvVdP
Cでポインタ使わなかったらエライ事になるだろ
アセンブラやってからCをやるといい
19 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:01:21.66 ID:oyxp9JnL0
組込みでは関数ポインタも使いまくっちゃうよね
20 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:02:27.59 ID:0WHzJZVV0
ポインタのポインタの使い方が間違ってるクソプログラム。
それを通してしまうコンパイラもクソ。
ポンタの宣言
ポインタの間接参照
この二つに同じ*を使うCの糞仕様のせいだろ
22 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:03:37.16 ID:FuI9z1ho0
>>14 リスト構造作る時とか、参照渡しする時とか
23 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:04:14.05 ID:Z9BbRtEEi
1ヶ月前、c言語勉強してたけどポインタと名前変換のところわかんねーからなげたわ
24 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:04:42.10 ID:9of7L2bf0
は?真のケンモメンはHellow Window!!表示させたら満足してやめるから
Cのポインタが分かりづらいのは「*」に2個意味があるからだろ
宣言に*使うのやめてint_ptとかchar_ptみたいな型名を作ればいいのに
26 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:05:27.81 ID:kG3Enatl0
nullpo
27 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:05:32.46 ID:GmwBUXdb0
コンピュータを深く知りたいなら適当なキットで組み込みプログラミングを体験すべき
プロセッサのアーキテクチャ、メモリなどのハード、デバドラやカーネルなど一気に理解が深まる
28 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:05:40.32 ID:FuI9z1ho0
29 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:06:32.39 ID:loC4IFgz0
ビジュアルベーシック簡単すぎワロタwwwwwwwwww
どういうときにポインタを使うべきなのかよくわからん
うまく使えねーよ
ポインタが分からないってやつの存在理由が分からん。
ポインタが分からないやつって、C言語以降の手続き型言語やオブジェクト指向型言語も全て分からないつーか
変数宣言すらしたことないやつらだぜ。そもそもプログラミングに向いてないだろ。
C言語以降で、拡張版ではない言語でポインタではないものが存在するのはJavaぐらいじゃね。
32 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:08:44.64 ID:Z9BbRtEEi
C言語とばしてc.object出来る?
33 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:08:48.12 ID:FuI9z1ho0
Schemeにあったっけ?
34 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:08:51.56 ID:3X1Sp0WU0
ノイマン型が飲み込めればポインタもコマンドまたはファイル名が違いますも分かるようになる
ポインタの使い方分からん奴は、
画像変換プログラムでも組んでみたらよろし。
bmpからjpgとか。
36 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:10:45.70 ID:T4eFgPzC0
インクリメントpしとけばいいんだろ
37 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:11:40.06 ID:z2Woxs410
ぬるぽ
38 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:12:06.46 ID:U9zP5Uen0
バカには概念説明するよりも実際に使ってる例を見せた方が早い
ポインタを乗り越えた先には、ポインタのポインタが待っていた・・・
メモリが少ない組み込みで巨大構造体を何重にも実体渡しするアホは氏ね
41 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:14:54.47 ID:zt1Dxhup0
Php,Postで鯖側でファイルサイズ制限かけてサイズオーバーしたもんうpしたときどこ見りゃええか知恵をくれ。。
なんで最後の伸ばし棒を省略すんの?
プリンターとかポインターでしょ
43 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:15:47.97 ID:nYfGHeSP0
ポインタはポイっとやればいいんだよ
44 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:16:36.83 ID:lPgpFwUc0
なでしこ最強伝説
45 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:16:37.43 ID:2YofUhJz0
こんなもんだと思って使ってりゃなんとなく理解して使えるようになるだろうに
それせずにわからんとあきらめるって死ねばいいのに
46 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:17:11.41 ID:FuI9z1ho0
47 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:18:44.10 ID:L4hRsrxy0
ポインタのポインタのポインタぐらいになると理解不能
Javaしか知らねんだけど、
配列の何個目みたいなことか?
ポインタのポインタってのは連想配列みたいなもん?
49 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:19:51.77 ID:VaiTbLda0
(*‘ω‘)ポインタ (´∀` ) < OK OK
(*‘ω‘)(*‘ω‘)ポポインタ (´∀` ) < お・・・OK
(*‘ω‘)(*‘ω‘)(*‘ω‘)ポポポインタ (´∀` ;) < カエレ
50 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:20:05.52 ID:/KIr6YE/0
どこが分からないか聞かれたけど特になかったからポインタが分からないって言ってあげれば喜んでくれるかなって思ってそう答えてあげました
51 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:20:41.51 ID:FuI9z1ho0
Cっつーか、コンピュータの動く仕組みがわかってたらわかる
まんまだからな
変数A ← Aのポインタ ← Aのポインタのポインタ
ただこれだけ
54 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:22:15.37 ID:jB4z3+kX0
ポインタなんかどうでもいいからナイスな変数名、関数名の付け方を教えてくれよ
55 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:22:34.56 ID:ZAuFZAyg0
上手に説明できないってことは
そいつも大して理解してない
56 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:23:11.32 ID:MCc/AG1n0
ポインタ作った奴ほんと馬鹿じゃねえの?
アドレスでいいじゃん
領域確保・メモリ読み込み手順を体系化せずとっちらかってるのが悪い
>>48 Javaでいうプリミティブ型以外の変数はすべてポインタだよ
58 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:24:27.75 ID:0WHzJZVV0
Arduinoのいいところは、マイコンなのに素のCで組めること。
59 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:24:40.00 ID:/KIr6YE/0
>>48 配列で言うならメモリ全部が一つの配列でその番号がポインタなんだよ
60 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:24:49.88 ID:KHOt02It0
>>53 関数ポインタは?っていうか関数ってメモリ上にどう展開されてるの?
ここからここまでっていう区切りがあってその先頭アドレスが関数のポインタ?
いつポインタを使うのかが分からない
変数Aに値が入ってるなら変数Aを直に見りゃいいんじゃないか
62 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:24:53.36 ID:enGMEH4O0
分からなかったことがないから未だに正しく理解出来てるのか謎
やたらポインタは躓くポインタはわけわからんって話出まくるから、分からないのかが分からなくならないか?
63 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:25:14.69 ID:oyxp9JnL0
一度アセンブラ使えば絶対理解出来る
64 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:25:37.85 ID:FuI9z1ho0
>>56 メモリアドレスを抽象化したものがポインタ型。
Cは中途半端にアセンブラだから初心者が迷うんだは。
ポインタを乗り越えた先には、アライメントが待っていた・・・
>>57 じゃあ俺これまで一体何マン個のポインタを作ってきたんだ・・・・
67 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:27:02.45 ID:wjg7tYzN0
だからいつもポインタは >>*** だって言ってるだろ
ポインタに+1したら一つ後のレス
1001以降に+1したら普通はエラーだ
もう完全に忘れたけど双方向リストとかいうのでつかうんでしょ
struct aiueo{
int* next;
int* prev;
int value;
};
みたいなの連結させて
でもC++ってそういうのが標準であるのがすごいよね
CASLでもやってろよwl
70 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:27:40.01 ID:MCc/AG1n0
>>64 その抽象化手法が間違っているといっている
intのポインタとdoubleのポインタで+1したときにアドレスの移動量が違うとか
そういうのが間違ってる
71 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:27:53.16 ID:dEK1VRUY0
関数まではヌルいのにここで一気に難易度が上がる
73 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:28:16.30 ID:FuI9z1ho0
74 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:28:33.11 ID:buj03xUK0
難しいも簡単も無いポインタはただポインタだっていう認識しかないわ
75 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:29:20.29 ID:5XDvIv190
難しいというよりも、おかしな説明で混乱させてる気がするな
このスレ定期的にたちすぎてプログラミング経験全くない人でもポインタの意味しってそう
77 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:29:54.64 ID:v+3jshmG0
*
&
->
の違いというか使い方が分からん
78 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:30:20.32 ID:CXpozvVdP
ポインタが明確でない言語から入った奴はとんでもなく非効率なコード書くことがある
とりあえず構造体データの値渡しはやめてください><
79 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:31:02.72 ID:dEK1VRUY0
参考書のポインタの説明はどれもイマイチ要領を得ない
そのせいもあってか、ポインタの説明専用の参考書出してる出版社は多い
>>61 変数Aならそれでいい
けど糞でかい構造体Bを関数Cに渡したいとする
そうすると糞でかい構造体Bを全てコピーしないといけないから時間かかる
そのときに構造体Bのアドレスだけを関数Cに渡す
81 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:32:24.94 ID:nNSAHNx10
82 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:32:33.80 ID:taguLsZ/0
ポインタのポインタみたいな辺りで投げ出した
84 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:34:39.62 ID:kzaMjDDf0
ワシのポインタは108式まであるぞ!
int ******************************** (中略) ******************************p;
>>7 *はポインタから参照先の変数に格納されたデータを取り出すためのやつで
&は逆にのデータの格納された変数のアドレスを出すためのやつで
->はたしか構造体をさすポインタから中の要素のデータ取り出してたきがする
すごくうろおぼえ
86 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:35:25.16 ID:lh6kXvHW0
>>77 ほんまこれ
メモリの番地なんて説明は馬鹿でも分かる
要は使い方が分からんだけ
.NETで参照渡しやれと言えばできない奴なんていない
ポインタは分からないんじゃなく「使い方が分からない」が正解
これはもうC言語の仕様の問題
87 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:35:28.52 ID:Z4pFIzPM0
ポインタの概念を説明するのにちょうどいい自動販売機の画像があったはずだが見つけられなかった
88 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:35:40.63 ID:erV7CGco0
int a**
89 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:36:18.81 ID:Gvv0+3jC0
なぜメモリの説明を省くのか
土地という概念がない状態で住所を理解しようとするようなもの
90 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:36:54.62 ID:d37aPAYR0
知らないけど要は参照型変数のことでしょ?
91 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:37:01.28 ID:BOzFefcM0
ポインタのポインタが分からない
92 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:37:13.05 ID:RQF+PeTN0 BE:2462611788-PLT(12269)
ポインタは理解できるんだけどポインタの必要性がわからない人は多いだろ
そもそも変なたとえ方するから絡まってしまうのだ
93 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:37:26.85 ID:kSNAcmsF0
良い教科書に出会えるかどうかだと思うわ
94 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:38:14.18 ID:MCc/AG1n0
Z80から入った俺的には○○型のポインタとか意識せずバイト単位で操作するほうがイメージしやすい
このポインタ抽象化したやつはほんと馬鹿
>>51 単なるアドレスと違い、型情報を持ってるけどね
96 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:39:36.23 ID:kzaMjDDf0
はじめてのC
(*ノ∀ノ)
97 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:40:17.62 ID:dEK1VRUY0
独習Cのポインタの説明は特に下手だった記憶がある、金返せって思った
98 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:40:50.68 ID:nSyCJj3I0
ポインタ難しいポインタ難しいってやる前から先入観植え付けまくりの昨今の空気のせいで余計に難しく考えてるだけだと思うぞ
99 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:41:35.79 ID:v+3jshmG0
>>85 >>86 swap関数とか参照渡しの例で使い方説明してもらった方がよく分かるよな
よくわからんけど、ドラクエ1でロトのしるしを求めるのに、
アリアハンからゾーマまでのストーリーを参照しなくても
「ドラクエ3のあれ」ですむのと同じ?
101 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:41:56.01 ID:wjg7tYzN0
型というかそこらへんは単に
変数が1バイトだったらポインタを+1したら1バイト先になるけど
変数が4バイトだったらポインタを+1したら4バイト先になるだけや
char** str;とchar str[10];が似たようなものなんだとどこかで見てわけがわからなくなった
>>98 そうなんだけどそれでどれ程の人が不幸になったとおもってんだ
間違う頻度が高すぎる設計なんだよ
104 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:42:41.83 ID:sMiEAJ430
105 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:42:59.54 ID:K0Sj6WBM0
>>76 実質雑談スレだという
本格プログラミングスレはなかなか立たない
ほらね!C言語って簡単でしょ!
じゃあ次はポインタね。
アセンブラやってないとこの落差が酷い
アセンブラやってれば涙出るぐらいに感動するのに
C++/CLIで^と%が増えて、String^% とか現れた時には、
誰かを殴りに行こうかと思った。
*(p+1)とp[1]が同じ意味
まずデータがメモリにあることから勉強しないとな
voidとかintで詰んだわ
メモリの概念知らなかったからおもいっきり躓いたが
パソコンに慣れてからまた勉強しなおしたらあっさり理解できたわ
やはりこんなどうでもいい話に長々とレスがつくあたりCは欠陥言語じゃね?
(Objective-)C/C++以外の言語だったらさ
chinko = Chinko.new
var chinko = new Chinko
Sexable Chinko = new Chinko()
このchinkoはみんなポインターだぞ。
そしてJavaはまあ中級者以上になりたいのであればプリミティプ型とオブジェクト型の区別が必要だから改めて
スタックとかヒープとかの話になるけど、他の言語だったらポインタなんて話は一切でないわけだが。
113 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:45:34.54 ID:sMiEAJ430
114 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:45:42.48 ID:pkeuLew00
本人呼んで聞かずに電話で聞けよってのがポインタでそ
>>101 それがもうだめ。そういうのは配列にまかせときゃいいんだよ
ほとんどアドレス扱うのに型意識しなきゃいけなくなる糞設計なんだ
つまりは定義してないアドレスへのアクセスも可能になるわけで
だから領域確保も含めて体系化しなきゃいけないのにそれをやってない前時代的言語設計
116 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:46:20.87 ID:MHE7b/+G0
ぬるぽぬるぽ言ってスレ消費してるかと思ったら
117 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:46:59.69 ID:FuI9z1ho0
>>110 void とヘミ猫はfj だけでたくさん
118 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:47:05.88 ID:GSxt2LQh0
おこなの?
学生の頃英語得意な奴に「なんで英語わかるのにこれがわかんねえんだよ知恵遅れかよ」っつったらマジギレしてた
でも毛唐の言葉より簡単だと思うんだよこれ
120 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:47:22.14 ID:lh6kXvHW0
教科書読んでも分からんよ
*や&のコード書いて実行して体で覚えるしかない
メモリの番地なんて説明はみんな理解してるしどの本にも書いてる
道具の作りじゃなく道具の使い方が分からないからみんな止まる
>>77 p->xxxは(*p).xxxと同じ意味じゃね
123 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:48:02.25 ID:K0Sj6WBM0
C++使おう
ポインタの演算とか操作なんて大学の授業とK&Rの本にしか載ってない
124 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:48:53.12 ID:v+3jshmG0
125 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:48:59.48 ID:MPD/GXS/0
飛行機でヨーロッパに直通では行けない
途中で乗り継ぐだろ
そこがポインタだ
126 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:49:07.98 ID:FuI9z1ho0
>>115 だからWirth 先生の方がセンスがいいんだは
データは値と住所をもっていて
住所を指してるのがポインタとかじゃなかったっけ
128 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:50:49.38 ID:/KIr6YE/0
誰かに説明するのに全部コピペするよりリンク貼った方が楽だよね
でいいじゃん
必要なページが複数あるならそれぞれへのリンク貼るよりどっかにあるリンク集にリンクした方が楽だよね
でいいじゃん
配列の先頭のアドレスと思っておけばいいじゃん
130 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:53:18.09 ID:CXpozvVdP
実行速度を犠牲にしてメモリやらアドレスやらを不明瞭にしたのが最近の言語
でも俺は良く切れるナイフの方が好きです
>>128 だから、そのリンクをインクリメントし始めたりするから分からないんだろ
133 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:54:24.87 ID:FuI9z1ho0
>>128 リンクをオペランドにした算術計算は定義されてないからねえ
ポインタは簡単
配列とポインタをまぜこぜにつかうからややこいのかもな
135 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:56:25.24 ID:qLXMc1U/0
>>61 変数を直に見るのにポインタを使うんだよ
変数の値をコピーして渡しているのが、いわゆる変数
>>80 が言っている構造体も同じ
136 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:56:55.14 ID:FuI9z1ho0
はっきり言って構文が悪い
138 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:57:36.97 ID:wjg7tYzN0
けんもーはまだモナドを議論できる素地ができてないな
わかるまでポインタスレ見かけたら書き込むで
>>128 こういう例えは半分正しいけど半分間違ってるんだよね
値渡しで書いてもポインタつかってもコード書く手間は変わらないから
値渡しで書けるならポインタ覚えなくていいじゃんってなる
140 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:58:15.23 ID:t5NLmkj70
>>105 基礎とあるあると土方煽りと言語論争しか伸びない
どんなプログラミングスレが立ってて欲しいか教えて欲しい
141 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:58:25.11 ID:kSNAcmsF0
俺も初心者だけどVisualStudio使えば良いと思う
間違った書き方したらその場で起こってくれるから体で覚えやすい
>>1 56 思想家(東京都) 2010/09/27(月) 09:50:04.83 ID:s2TCOy1qP (p2)
>>15 ↑
これがポインタの指すレス番で
15 声楽家(関西地方) 2010/09/27(月) 09:38:37.84 ID:tK/qXfqX0 (PC)
初心者がつまずくというポインタってなんなの
ポインタって言語としてどういう利点あるの?
初学なんだけどポインタまで行ってないから教えて
これが「ポインタが指し示すレス番の中身」
レス番だけ示した方がいろいろと抽象化されて省略が可能で捗る
で、おまえのパソコンのポインタ(矢印)でレス番を指すと中身がポップアップされるだろ
そういう風に柔軟な表現、動的な表現が出来て美しい
143 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/29(火) 23:59:18.26 ID:iut/VM2j0
メモリを理解せずにポインタを理解しようとするから理解できないんだよな
コンピュータアーキテクチャから学べ
3行で説明してくれないと僕分からない。
ポインタを型キャストしてコピーする技もあるんやでぇ
146 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:00:44.43 ID:CXpozvVdP
147 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:01:02.38 ID:D5h4YUWW0
二次元配列とポインタのポインタの関係がわからない
148 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:01:05.24 ID:YddySfu90
システムにおいて最適さと自由度はトレードオフだ
速度の代わりに改修に強いオブジェクト指向の設計を人類は手にした
早さを取るか保守のしやすさを取るかはシステム開発者の永遠の課題だ
そう簡単に白黒付けていい話じゃない
149 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:01:45.59 ID:skSpZf820
ポインタはCの糞機能の一つ
これを使うだけで簡単にソースをぐちゃぐちゃにすることが出来る
ぬるぽ
152 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:03:03.94 ID:aHqQ+REG0
ポインタでつまづくのが本気で理解できない
電機用語のインピーダンスは正直ちょっとつまづいたけど
2ちゃんにインピーダンスの説明専門のスレがあって助かった
153 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:03:32.95 ID:mmuVxLc60
ぬるぽいんたーえくせぷしょん
独学でC言語勉強したいんだけどおすすめのサイトない?
155 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:03:37.31 ID:J637SDSg0
アドレスを番地というメタファまでしか理解させないからダメなんだよ
ちゃんと複数バイトのデータで、整数データと同じようにメモリに保存できるというところまで理解させないといけない
アドレスに限らず、intなどの組み込みデータ型、構造体、共用体についても、実際にメモリにどう配置されるかというところまで教えたらいい
156 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:04:02.39 ID:5FuAmOrN0
ポインタと変数の動作の違いを理解するには
デバッガでそれぞれの動作の違いを追ってみればよくわかる
プログラムの動作の違いはソースを読むだけでは
初心者には理解しにくい
157 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:04:15.35 ID:O7Aw8CTx0
>>154 Cを独学するメリットなんかないからやめとけ
ノイマン型コンピュータのアーキテクチャから勉強しないと無理だろうな
p とqを使って説明したために俺は理解できなかった
a とb なら楽勝
160 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:04:51.46 ID:wjg7tYzN0
つーか最近は学校でプログラムの基本はやってるんじゃないのかと
センターでそういうテストあるでしょ
int i,*p;
&i == p == アドレス(0x00000000);
i == *p == 数値(0);
とかで最初の時は憶えてたな、最近プログラムやってないから間違ってるかもしれんけど
162 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:05:09.21 ID:Ggfotg610
ポインタがわからないと生涯スクリプト言語しか使えない人生になるぞ
163 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:06:02.18 ID:sNPQK6iA0
ソースを読めなくするという意味においてはGOTOに通じるものがあるよね
int *pointa_wakanne;;
166 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:07:01.86 ID:NcQe24cD0
perlの正規表現もだけどわかりやすくも書けるよ
167 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:07:10.38 ID:K0Sj6WBM0
>>140 ポインタスレは素人集めるためにもっとやれ
Linux/BSDスレはもっと立てろ
そろそろ特定言語に詳しいやつが嫌儲見てるはずだから、言語を特定してスレ立てしろ
スレ立ては土日に行え
168 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:07:32.74 ID:X+sFXuo50
ポインタのポインタがどーたらこーたら
ポインタ覚えた中級者が次にハマるのが仮想アドレス、物理アドレス、キャッシュアドレス
書き換えてるはずなのに書き換わらないと首をひねりながらデバッグする
170 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:07:40.78 ID:flPe00vI0
C言語の生みの親自らCのポインタ周りの構文は糞って認めてたからな
ポインターでつまづくと言うより、ポインターの有用度が分からないから
使わないし、使わないから覚えないという悪循環だと思うよ
172 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:10:24.75 ID:Ggfotg610
Javaとかやるとヌルポインターエクセプションとかでしか触れる機会なくなるけど
ポインタがわからないとオブジェクトも仮想関数も本当にはわからないから
ポインタとか幼稚園児でも分かるんじゃね?
てかプログラムの構成要素は全部幼稚園児レベル
単に形式言語に起こすだけ、表記の問題
継承とかも
ぞうさん、キリンさん、蛙さん
仲間外れはどれかなー?
でもみんな動物だよね
で終わる話
シンタックスシュガー使え
175 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:13:20.36 ID:5Yh2HJS80
矢印のやつのことかとおもた
関数内で値弄るのにポインタ使うか→グローバル変数でいいじゃん
ってのはあった
キャッシュにはアドレスないよ
というかプログラムから意識できないよ
せいぜいプリフェッチ指示するくらい
178 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:14:49.78 ID:pGW/pXul0
逆アセンブルするときに訳が分からなくなる
179 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:15:29.87 ID:vtVfNRvh0
大先生が難しく教えようとしたり、ここで躓く人多いんだよーとか脅しながら教えるせいだろ
実際にプログラム書かせながらやれば普通にわかるわ
180 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:16:44.94 ID:Ggfotg610
C++を完全に理解してポインタをマスターするか
動的言語でもやってポインタと無縁の人生を生きるか
2つに1つだ
Cだけではポインタをマスターしたことにならないからな
ポインタの応用として型があり継承がある
181 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:16:54.98 ID:KA8EHJqw0
ポインタの先がDMACとかメモリ共有してたらキャッシュに気をつけろ
インバリデートしすぎても処理時間食って困るから順序をよく考えろ
182 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:18:36.00 ID:I/Ls9uwn0
型とか継承とか
必殺技みたいでやだやだ
>>180 動的型づけ言語なんてむしろ全てポインタなんだけど・・・
お前の素人っぷりがよく分かるわ
最初の言語でCやったとき、ポインタみて寧ろ便利だなーと思ったが...
185 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:22:39.17 ID:Ggfotg610
>>183 動的言語は名前でアクセスするだけ
静的言語は何バイトずらした位置にアクセスすればいいかを事前に静的に決めてる
だから静的型はポインタの応用で高速に動く
動的言語は名前テーブルにあたってどこにあるか調べる必要があるから遅い
>>185 それをやるのはコンパイラであってコーダーではないよ
187 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:24:18.67 ID:NcQe24cD0
動的言語は楽だけど大量のメモリ扱うときやる気なくす
いいとこ取りの言語でて欲しい→D言語かぁ。。。
188 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:26:31.24 ID:it63ARP2i
こんな時間にドヤ顔でうんちく語ってるやつはなんなの?
189 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:27:10.29 ID:fv91rWUR0
動的言語はゆとり言語
190 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:28:34.01 ID:y3nE81qZ0
ポインタの基礎をやっとの思いで理解したのに
C#に移ったらまったく使わなくて泣いた
191 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:29:42.82 ID:FVdQQC/70
ポインタは理解できるけど、必要性を理解する前に飽きた
どうやら、別の関数で宣言した値は、別の関数では共有できないので
共有したいときは、ポインタで引っこ抜いてくるみたいな感じのような気がしてる
192 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:30:48.96 ID:y4G0Rb0y0
JavaやC#も嫌いじゃないがCいじっている時が一番落ち着く
ポインタはPCのショートカットと同じ役割だよ
ショートカットに参照先のファイルのアドレスが入ってるのと同じで
ポインタには参照先の変数のアドレスが入ってる。
194 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:31:46.26 ID:eylFBkIxO
DOSのEMSとXMSがわからない
195 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:32:00.08 ID:+GoLbZSD0
全て宣言文の書き方の仕様が悪い
196 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:32:40.45 ID:RcVkuDhk0
ポインタを理解できない奴なんていないだろ
どこに躓く要素があるんだよ
197 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:33:24.45 ID:Ggfotg610
>>186 C++になぜ訳の分からないルールが大量にあるのかを理解して正しいコードを書くには
コーダーも静的型とポインタの構造を全部理解する必要がある
JavaやC#では隠蔽されているけど一皮むけば中身は同じだから無縁ではいられない
親クラスの変数に子クラスを代入するっていうのがどういう処理なのか理解するにはやはり静的型とポインタを理解しなきゃならん
>>196 >>193みたいな説明をドヤ顔でされた後に
ポインタの演算なんかをやらされて頭が爆発する
200 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:39:13.34 ID:yVh7rjuT0
201 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:41:11.36 ID:LkrHPDEy0
ロッカーの番号見たいもんだろ
202 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:43:04.76 ID:fkZ7ipJU0
>>201 突き当たりの壁にまでロッカー探しに行って壁に荷物ぶち込もうとするから弱る
203 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:43:51.31 ID:tt1PX+wG0
プログラミングとか全くわからん俺にガンダムで例えて教えてくれ
あーそうだわポインタが分からないというより
どうしてそれを使わなきゃいけないかが分からないんだわ
ポインタのポインタとか
206 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:45:45.90 ID:KA8EHJqw0
>>196 プログラミングで躓いて先に進めなくなる要素は3つあると言われてて、
・変数の概念
・ポインタの概念
・マルチスレッドの概念
この3ヶ所で引っかかってプログラミングができない奴がかなりの割合でいるそうな。
208 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:50:10.81 ID:Ggfotg610
再帰の概念の方が引っかかるだろう
そして再帰に取り憑かれて関数型に迷い込んで戻れなくなる
プログラムでマルチスレッドって言うと
メモリ共有で別ルーチンを実行するって意味だけど
どうしても、マルチコア的な意味で取られて話がこじれるから
マルチタスクって言ってるわ
210 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:52:08.24 ID:+DsuHwhA0
俺はどちらかというとアロー演算子で詰んだ
>>208 末尾再帰最適化言語教徒になると帰ってこれないからな……
212 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:53:48.37 ID:2tFfNLa/0
213 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:58:49.11 ID:q6Yj3FnD0
使い道がわからないんだよ。応用例から強引に覚えればポインタなんか余裕
214 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 00:59:06.06 ID:jAHdcz/v0
変数わかれば何とかなりませんか
プログラミングって訳も分からぬまま実践してから理屈を学んだ方が効率良い気がしてならない
さもなくば機械語からやる羽目になる
メモリ上に突っ込んでるってことを知りさえすれば何も難しい点はないと思うんだがなぁ。
理解する必要はない。知るだけでいいのに。
217 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:02:53.42 ID:jPQ93GrY0
そういう機構の元動いてるって頭の片隅で覚えておくだけじゃだめなのか
今日日そこまできにするのって半田ごて持ちながらプログラム書く人くらいでしょ
>>217 結局pythonとかrubyとかのポインタのポの字もないような言語でも、インスタンスの概念がない言語なんてほとんどないから、
例えばリストをコピーした時にリストの要素はコピーされてるのかそれとも要素へのポインタがコピーされてるのかとか、
そういう細かい動作を把握するときにポインタの概念がないとすごく苦労すると思う
やろうよ、自分の仕事なんだからさぁ
220 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:12:20.84 ID:WDmiTVHk0
>>204 なんかのでっかいデータを相手に渡す必要があったとして、
ポインタを使わないとでっかいデータを丸々コピーして渡さないといけない→遅い
ポインタ使うと、先頭のアドレスを渡せばいいだけ→速い
このくらい知っておけばいいよ
いきなりポインタのポインタとか理解しなくていい
実際は
>>217の言うとおり特定の人にしか意味ないことだし
ポインタは思わぬバグも引き起こしたりするしね
221 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:13:55.25 ID:ospnNQ/L0
>>217 職業プログラマだと当然知ってないと行けないレベルの話しなんだけど知らずに糞みたいなコードを量産する奴がほんとオオイ
222 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:15:29.96 ID:UMLIeEpv0
アセンブラとかをちょこっとでもやってれば
そんなに難しい話じゃないと思う
今てCaslとかないんだっけ
223 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:16:22.53 ID:C3ML/Uls0
自分でSTLみたいなものを作ってみれば勉強になるよ。
my_string型とかw
224 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:16:57.46 ID:+gg4RrWd0
この程度の事が理解できないならプログラマ目指さない方が本人のためだよ
225 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:18:40.11 ID:YddySfu90
このスレで何度も言われてるがC言語のポインタの難しさの原因は構文
アドレス云々は皆理解してる
そもそもポインタの構文の何がむつかしいの?
227 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:22:31.25 ID:gWTirH5m0
で
お前ら習得したプログラミング言語でなに作ってるの?
ちょくちょくプログラミングスレ見る割には謎なんだけど
228 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:23:04.71 ID:k+Af5xlt0
Fortranってどうなの?
今からやる価値ある?
229 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:23:21.56 ID:Ggfotg610
まあポインタを実際に使えるようになる必要はないよな
&とか*とか書いてプログラミングするには人生は短すぎる
ただ静的型言語ユーザーがある程度から上に行くには
C++を完全に理解して型とポインタの構造を全て把握しておく必要が有るってだけ
つまりEffective C++は全人類の必読書ということ
>>228 スパコン触る人以外は一切やる必要はないと思う
C、C++、Java、LL言語、JavaScript、あたりをひととおりやった奴が趣味で勉強するならアリかな、ぐらいの必要度
int N;
int *N_pt=&N;
めんどい
int N[1];
楽
232 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:28:16.90 ID:k+Af5xlt0
233 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:28:45.21 ID:Sud2Dve70
ハイパー演算子覚えないとプログラム作れる範囲というか自由度限られてくるからな
>>232 うん、それでいいと思うよ 今流行のWeb関連のことはひと通り何でもできるし
235 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:30:46.60 ID:NcQe24cD0
今更だけどプログラム言語は文字の記号が少ないのが一番問題発生させる原因だ
見づらいコードになったり汚い文法になったり
236 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:31:07.69 ID:3Xxn3e900
マウスカーソルがどこいったか分からなくなることかと思ったは
JavaとかC#とか参照型でポインタが隠蔽されている言語にふれるとポインタを生で使いたいと思わなくなる。
ガベコレさん最高や
238 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:36:24.14 ID:O7Aw8CTx0
>>237 触りたくはないが参照渡しやobjectの比較をやるときにはまるから理解はしとくべきだと思う
239 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:37:38.73 ID:km7zaMRY0
ポインタ使った乗算って
(*a)*(*b)
みたいにするのか?
なんかちょっと卑猥だな
>>238 Javaの文字列比較とか確かにハマりそう
241 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:38:06.18 ID:Tj7QBxdf0
難しい、難しいと騒ぐからじゃないかね
単に、アドレスを入れる変数だろ。
242 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:39:00.05 ID:NcQe24cD0
GCはGCのタイミングとか余計な面も発生するので
全部自分でコントロールできないがゆえに余計苦しむことになる
243 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:39:26.42 ID:OfKj0cTq0
ぼくにはPHPちゃんの参照渡しで十分です
>>209 スレッドのコアアフィニティを設定できることが
さらにややこしくしていたり
ブラウザゲームとか、時折走るGCのせいでどうしても一瞬止まったりするからな 一概にいい事ばかりでもない
246 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:48:04.43 ID:kAXLQF+y0
Ruby始めたんだけど、メソッド引数記述時の()が省略出来るのがよく分からない
省略することで読みやすくなってるか?アレ
割り算は時間かかるから、
何度も同じ数で割るんなら
逆数を掛けた方が全然早いよね
248 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 01:55:29.68 ID:0pz1pwJ1P
変数名と関数名の付け方がほんと下手くそなんだが
上手い方法ないかね
249 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 02:18:42.31 ID:+9K/IyR30
ポインタになんてショートカットみたいなもんだろ。
それよりコードに再帰関数とかあるとダルくて萎える
プログラミングってやってる奴多いのか
いつも何作って遊んでるんだ?
252 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 03:27:03.82 ID:lPwgWwfj0
やたら解説本とかで難しいからとか専用の参考書出てるからそんなに難しいのかと思って勉強して見たらわかった気がするけど
こんな簡単に理解できるはずがないと思って理解できてないものだと思ってる
ツクールとかじゃない簡単にゲーム作れるプログラムなに
プログラマーにならんし格ゲー作れたらあとはどうでもいい
アセンブラから始めればわかるだろ
asmキーワード使って直にCPU触ってる時はC使いとして優越感に浸れる
x86はレジスタが少なくて悶絶するけど
たしかにわからん。
というか忘れる。
理屈はわかるんだけど
入門書みながら勉強してると
それを使う機会がないので利点がわからない(´・ω・`)
259 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 07:11:18.65 ID:ckBM97Ko0
>>112 Javaはプリミティブ型が残ってることで、時代遅れ言語言われたりするくらいだもんな・・・
ポインタは賢者状態
ハッスル状態の時は要らないもの
ポインタの宣言と使用の記号を別にすればわかりやすくなるかも
もうメモリなんかザブザブ使って
代わりに落ちないようにする時代
参照?全部コピーだ
263 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 08:57:32.18 ID:ycMXhYX80
ポインター(pointer)
264 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 09:00:17.08 ID:AGsisI6g0
>>48 一次元記憶空間の座標だよ
座標(point)を指すからpointer
265 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 09:02:50.00 ID:cA/s/vfU0
>>57 javaはハンドルだろタコ
javaのハンドルは特定の記憶空間の座表を指さず、
記憶チャンクの添字を持ってるだけだから、
ポインターじゃねぇ
266 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 09:07:35.52 ID:c5Vm/aLH0
assemblyの事をassemblerと言うやつは
assemblyをまともに書く機会がなく、
assemblyとassemblerを区別した
経験の無いやつ。耳を傾ける必要ナッシング。
267 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 09:07:56.78 ID:O6LIBBU/0
>>57 Cよりも、Javaで実装してる時の方がポインタ意識するよな
関数へのポインタ変数宣言するときのカッコが糞
きいてるとむしろ値渡しをなくせばいいんじゃないの
270 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 09:19:30.57 ID:ckBM97Ko0
だよね。C# も Python もそういうもんなんだっけ?
272 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 09:32:14.60 ID:+OJ4rlKCi
ポインタのポインタ
273 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:00:49.08 ID:IO+PMH5K0
プリミティブ型は値渡しでオブジェクト型は参照渡し
ってのが気に入らない
アセンブリ言語に触れれば嫌でもわかる
275 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:15:57.72 ID:XVfU7VoX0
ポインタが理解できないっていうより
じゃあ実データとアドレス指定どう使い分けるの?ってとこがわからない
大体そういう実践的なことは座学では教えてもらえないし
参考書にも書いてない
>>169 こんなん関係ないだろ
OSの領分じゃん
カーネルメモリやらシステムコールやらやりだしたら
それはもうC言語の問題じゃない
277 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:18:10.16 ID:XVfU7VoX0
仕様書みたいなもんをだらだら解説するより
こういうことやったらこんなの作れるんだぜーってやったほうが
きっと身につくと思うんだよね
そういう書籍もあるにはあるがかなり古臭いしょうもないプログラムだったりする
278 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:24:04.69 ID:K0VRVZ9k0
ポインタよりC++リファレンスつかえ
昔ビジュアルC買ったけど分厚い解説書の1ページ目でめんどくさくなって積んだわ
ていうか、何のためにポインタって必要なの?
282 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:28:15.06 ID:uPYV/ub30
ポインタってメモリの参照先を入れておく変数ってこと?
それならPLCだとふつうにやってるが
どうせ頭わりーからわかんねー、でも何度も使えばそのうちわかんだよ
だからポインタを使うとこんなに便利という実例を教えてくれ
284 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:37:05.73 ID:NcQe24cD0
以下用語は適当でイメージ優先
メモリのアドレスを指すため
関数の引数に参照で変数を渡すため
関数を変数に入れて使いたいため
用途はこんな感じ
285 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:41:29.67 ID:Si+uJzlz0
ぬるぽいんたー
286 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:51:17.08 ID:Rjx9vhxn0
あー
マシン語なら
ここは命令領域ですー
ここはデーター領域ですー という、標識ニーモニックが あったほうがいい かな。まあ実際は
命令領域からデーター領域に、命令領域と認識したままプログラム進行しないようにプログラムするはず。
なのでポインターはいらないといえばいらない。
287 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:53:44.38 ID:TqVyA4YP0
288 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:54:40.74 ID:Rjx9vhxn0
マシン語は
開始番地のニーモニックは絶対に命令コードでASCIIなどのデーターコードではない という鉄則が必要なんだよな。
289 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:56:22.92 ID:TqVyA4YP0
290 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:57:14.36 ID:Rjx9vhxn0
>>289
Cは新自由主義関連なんだよな。
ポインタはわかるけど、オブジェクト指向ってなんなの?
292 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 10:59:19.92 ID:Rjx9vhxn0
>>291
それは、UNIXをつくるぞ⇒ひとりじゃ無理⇒じゃ、分担しないと⇒じゃ、プログラムを分割しなとだよね⇒
よく使うルーチンをパーツ状にすればいいよな⇒
という考え方で編み出されたもの。レゴブロック。
293 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 11:01:00.78 ID:TqVyA4YP0
まあしいていえば今存在するほどんとのコンピューターが
ノイマン型であってこの上で動かすプログラムである以上は
切り離せないってだけだな
辞書の索引みたいなものだよ
294 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 11:04:25.90 ID:Rjx9vhxn0
>>293
なにおまいの脳内、結構ゴイムゴイムってうずまいてるほうなん。
箱とラベルって言うからわかりにくいんじゃないの?
ラベル使わなくても箱ごと持ってこれそうだし
やっぱ住所と建物だな
このスレには、ポインタと参照の区別がついてない人、参照の値渡しと参照渡しの区別が
ついてない人が混じってる。
297 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 11:54:39.31 ID:Rjx9vhxn0
>>296はそれがたとえようもなく嬉しい。滝田ゆうの隠居のように…
298 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 11:58:21.01 ID:Rjx9vhxn0
ポインタって
アドレス値と格納してる値があんだっけ。で、呼び出し方が*かなんかで区別 なんだけど
この挙動おかしくねーか という事例がCであって信頼できなくなってだな。
299 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:00:35.62 ID:Rjx9vhxn0
なんだそう考えるとポインタって便利ですかどうですか。よくわかんねーな、特定の番地にデーター指定席したいかおまいら。
300 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:04:14.09 ID:+Xg0IGyi0
ウルトラ警備隊が使ってる車のことだお(^ω^)
301 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:04:55.75 ID:Rjx9vhxn0
特定の番地にデーター入れるなら、普通そのメモリー領域をプログラムが侵さないよう領域確保とか必要なのよな。
それは機械におまかせしたほう楽だよなという考えだったんだよな当初の高級言語。
302 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:08:19.80 ID:Rjx9vhxn0
これは思ったよりこいつプログラミング詳しいなという反応でよろしかったでしょうか?
(∪^ω^) わんわんお
304 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:11:40.21 ID:xqJNcIXU0
peekさんとpokeさん
305 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:12:44.40 ID:LJ25eWQ8i
>>100 こういう感じでスターウォーズに例えて教えてくれ
306 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:13:19.90 ID:Rjx9vhxn0
まあこのー
ポインタに入れるアドレス値ってどんくらいだと安全ですかね?という質問を待ってるとか
そうゆう選別術かな。Cに領域確保コマンドってきいたことねーし。
307 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:16:02.03 ID:Rjx9vhxn0
>>305
AウィングとBウィングとXウィングとYウィングのうち、R2D2が乗ってるのは どれ!
>>1 こいつ何がバカかって、こいつが説明してる範囲でのポインタの説明には
> プログラムって言うのは小さな命令の集まりなんだけど、コンピュータでプログラムを実行するときには、
> これらの小さな命令を順番に実行していくわけです。
>
> でこれらの小さな命令がどこにあるかって言うと、
> メモリっていうところに保存されててそれぞれに番地が振ってあるわけです。
この部分が全く関係ないし説明も不要だと言うことを
本人自身が理解していないこと。
ポインタの概念や言ってる内容の理解そのものに間違いはないのだが、
典型的な「自分は何を分かっているか」
「なにをどう説明すれば十分かの把握」を分かっていない、
知識ひけらかし型の典型例。
309 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:20:43.07 ID:p6y8oDJ60
ウルトラ警備隊の車か
310 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:21:05.50 ID:Rjx9vhxn0
>>308
あ?
前段として必要だよな初歩の人には。だいいちおまえはわかりやすく説明する気もねーししてこなかったのになにキレてんだおまい。なぞのひと。
int *p() ← pはintのポインタを返す関数
int (*p)() ← pはintを返す関数のポインタ
読み方は変数名から結合即順にofで繋げる
p is a function of pointer of int
p is a pointer of function of int
これで完璧
>>271 >>279 お前らこそ大丈夫か?
long* ptr_i;
だと、ptp_i++ したときには、ptr_iの値は4増えるけど、
double* ptr_d;
だと、ptr_d++すると、ptr_dの値は8増える。
char* ptr_c;
なら、ptr_c++すると、ptr_cの値は1増える。
そう言うことを、レス先の人は言ってる。
313 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:29:58.68 ID:PrIeG6s30
314 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:29:59.77 ID:Rjx9vhxn0
>>311 ポインタを アドレスと呼んでもいんじゃねーの。
>>310 > 前段として必要だよな初歩の人には。
要らないよ、少なくとも関数アドレスを変数扱いにするようなことやらないかぎりな。
分かりやすく説明するにはそのセクションは全く不要だと言ってる話に
「分かりやすく説明する気もない」
とか意味がわからんのだが。
316 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:32:28.61 ID:Rjx9vhxn0
>>315
おまえの選民くささをいっとるのだよ。わからん香具師はついてこなくていい!をするにははやすぐるうえにたかすぐる敷居。
なるほど日本のITが裾枯れするはとなっとくのつくり。
>>312 自己レスだが
>>271 >>279はあれか、
> long* ptr_i;
> だと、ptp_i++ したときには、ptr_iの値は4増えるけど、
>
> double* ptr_d;
> だと、ptr_d++すると、ptr_dの値は8増える。
この動作をするのが分からない、ではなくて、
「こんな風に動くべきではない」って意見への反論なのかな?
だとしたら俺の突っ込み方が間違ってたな。
俺もポインタならこんな風に動くべきだとおもうので。
>>316 分からんやつはついてこなくて良い、ってのはむしろ
>>1なのだがな。
自身が説明する範囲の説明には全く不要なことを
べらべら喋る意味なんぞないし。
319 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:39:32.19 ID:xNwwCzNB0
>>281 ハンドルや参照ではなくポインターでないとだめな用途としては、
ハードウェアの入出力がある。
PCIなんかで入出力するには決まった座標に書き込む必要がある。
それから、仮想記憶空間と物理記憶空間の移動がある場合や
メモリーマッピング。
SmalltalkやJavaのようなハンドルしか持たない言語でも、
ポインターをラップしたオブジェクト経由で操作できるが
既存の処理を使い回せるとかという旨みが全然ない。
320 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:39:33.39 ID:Rjx9vhxn0
>>317
そんなの あたりまえじゃん。そう
動かなかったらメモリー管理できんが。
322 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:41:49.63 ID:4R+UbJ0x0
さすがに今だったら初めにCはあんま勧めないかな
とりあえず型付け強度の概念を知ってればすぐ読めるだろうし
見づらい書き方に時間掛けるのは無駄以外の何者でもない
323 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:42:28.57 ID:Rjx9vhxn0
しかしあれだ
倍精度小数点て、8バイトもつこうとるんか、へー。64bitマシンも1アドレス0〜255までの値なんなら
なにが8bitマシーンとちゃうんかよーわからんな…
324 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:42:29.21 ID:NcQe24cD0
まぁ最初は単純な概念だけでプログラムしてて
こんなこといいなできたらいいなっていう不満や改善点に自分で到達するのが一番いいとは思うが
>>312 sizeofは処理系依存なんだが
言いたいことは分かる
326 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:44:29.85 ID:Rjx9vhxn0
まあただCはコンパイルで即マシン語なっかんな。そこだけまあすんばらすぃ高級言語。そこだけ。
327 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:47:25.94 ID:Rjx9vhxn0
たぶん longはintの2倍バイト、doubleは倍精度浮動小数点とかいうやつでcharは文字列な。ただこの文字列だと
漢字はサポートできない。
328 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:48:31.22 ID:EzlIc7Qj0
ハンドル … 記憶領域などを識別する値。SmalltalkやJavaが使う。
参照 … 引数として受け取った変数そのものを操作。C++やFortran、C#などが使う。
ポインター… ハンドルに似ているが明示的に記憶空間の位置を指す事ができる。CやC++、C#、Goなどが使う。
>>276 Cを使う仕事って今だとDMA触るような低水準レイヤーの仕事しかないよ
アプリ作りたいならもっと高級な言語でいいわけで
pascalだと
var p : ^integer; ポインタの宣言
p ポインタ
p^ ポインタの指してる先
で、
俺のみた参考書にはなぜか矢印で表記されていて
var p : ↑integer; ポインタの宣言
p ポインタ
p↑ ポインタの指してる先
みたいな感じでイメージつかみやすかった。
>>329 あと、Android関係な。
と言っても、カーネルドライバとかの辺りだから
DMAは触らなくてもかなり低いレイヤーなのは間違いないけどね。
プログラミングしてるのにメモリーのことまで頭を回さなければいけないCが勉強用としては負荷が高すぎ
333 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:53:02.87 ID:Rjx9vhxn0
ハンドルもポインターも アドレス番地 なんだけども まあポインターは関数に、式として扱えるのかな。とにかく
明確に説明しないで才能をつまんでそいつにも曖昧模糊っとかたらせたい流れがあんだは。
334 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:55:33.33 ID:Rjx9vhxn0
関数の番地がわかって それでどうすんだよ という怪訝はありゅ。
>>334 C++の仮想関数が出る前は関数アドレステーブルで似たようなことを実装していた
336 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 12:57:43.56 ID:9rmOvBX/0
fastcallって最適化の邪魔だよな
337 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 13:00:07.99 ID:Rjx9vhxn0
まあこのー 今16ギガバイトとか32ギガバイトまでメモリーがあるので、
その広大なメモリーを最大限駆使して書いたプログラムなんて 番地管理大変なはずだし なんか簡略化した旧式記述に
ひっぱられた様式なはずだな今も。
338 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 13:02:08.65 ID:Rjx9vhxn0
そう
結局
メインテーブルは0000〜FFFFまでのあいもかわらん64Kバイトで、あとはそこにとっかえひっかえな状態を
仮想メモリーと呼んでる疑惑はあんよ。
339 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 13:04:30.99 ID:Rjx9vhxn0
なぜかというとだ
アドレス管理の結線のアドレスバスというやつがぁ、ハードの制約でふやしがたいからなのなきっと。
340 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 13:09:50.20 ID:u+clm3jj0
説明できないから理解はできてないと思うけどとりあえず使えてるから大丈夫だよね
ポインタが難しいってのは別にアドレスが云々で難しいってことじゃなく(寧ろそこは殆どの人が理解
できてるだろう?)、表記が紛らわしい煩わしいってだけだろう。
>>311とかが(何が難しいと感じるか?の)本質を突いてるわ。
int* a[10];とした時、aがintポインタの配列なのかint配列のポインタなのかパッと浮かばないと
意図を上手く表記できなかったり、表記してるつもりが意図と違ってたりしてウァーってなるんだろう。
あれ?の都度、演算子の優先順位表を見ればいいだけじゃね?て気もするが・・・・・・
342 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 13:16:58.27 ID:Gsv0HWSr0
以前C言語勉強したけど、勉強したところで何すればいいのか分からなかった
目的もないまま手を付ける物ではないんだと痛感した
Cを勉強した後なにをしたらいいか分からないって人をよくみるけど、
昔は「CでBASICのINKEY$とかLINEとかどうすんの?」って感じだった
けど、このインターネットの時代になんでそうなるかわからんわ。
まあ、現代なら
SNS作ってザックバーグみたいにビッグになるぜ!
↓
え? Cは使わないの!?
ってなるんだけど。
344 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 14:36:35.81 ID:IkMOS9p20
C言語で作ったプログラムをデュアルコアで使うとCPUの使用率が50%になるんだが
コア一つしか使えてないってことなのか?
CPUをフルに使って計算機させるにはどうすればええんや
347 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 15:03:50.44 ID:DnA3hLfGi
>>322 じゃあ、
とりあえず手始めのプログラミングの勉強に、って人は何から学べばいいの?
JAVAとか?
349 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 15:36:41.02 ID:tXFmFZVKi
アドレスが入っている。
基本として、形宣言というのはコンパイル時にエラーを検出するためのものであるということをまず理解させないとダメだよ。
>>26 「ぬるぽ」はともかく、
「がっ」ってどういう意味なんだ…
いまってCASLとかってあるのかね?
2時間ででいいからアセンブリ勉強すればポインタの概念なんて
踏み外すことないんじゃね?
あとはくどいだけの表記を覚えればいいだけ。
Cは低レベルな制御が可能で分かりやすいけど、その分ハードウェアの
アーキテクチャが理解出来ていないと、本当の意味で理解したとは言えないわな。
そんなレベルになるまでC言語を使っているのは、組み込み系の一部のプログラマだけだと思う。
>>330 Pascalだと↑を使うのが本寸法。でも開発当時そんなのが打てる端末は
少なかったから、^で代用した。
PascalのポインタはCより抽象度が高くて、算術演算なんかは定義されてないから、
このスレで叩かれてるような問題は起こりにくかったな。
(free unionを使った抜け道がこっそり用意されていたけど)
356 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 18:03:13.82 ID:4GD856EG0
あれだろローソンのレジで聞かれるやつ
ポインタの何が難しいのかさっぱりわからん
358 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 19:36:21.08 ID:MVlDwI2X0
>>357 アセンブラやマシン語経験者は生のアドレスについて理解してるが
Cからはいった人はポインタという概念をいきなり覚えろといわれるからな
プログラム言語は抽象的な概念が多いのでこの辺は理解できるできないは
かなり分かれる
359 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 19:37:56.29 ID:/ZUBFnpy0
こいつの方が出来るキャラだったのか
360 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 19:39:35.30 ID:3BesSyrO0
>>333 ハンドルはアドレスじゃねえよ
WinAPIとかポインターでハンドル取れるけど、
ポインターの中に突っ込んでる値はアドレスじゃなく、
OS内部でもってるテーブルの添字。
javaのハンドルも同じでポインターじゃない。
361 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 19:41:19.94 ID:MVlDwI2X0
>>360 windowsのハンドルは実はアドレスぽいけどな
一意の数字であればいいのだからハンドル=アドレスでもいいし
ハンドルの方が概念的には分かりやすいな
まあ内部隠蔽してるから当然だけど
363 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 20:25:40.38 ID:Y+1B3abb0
>>361 物理アドレスを使うドライバーの影響を受けないよう
実アドレスは使ってない。
実アドレスだとオーバーランの巻き添え食らってシステムが死ぬからな。
364 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 20:50:00.27 ID:Rjx9vhxn0
>>352 1999年の授業ではやった。スタック使う短いアルゴの例題を消化した。
365 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 20:52:03.02 ID:Rjx9vhxn0
>>363
物理 メインテーブル
実 32ギガ対応 と見た。見ただけ。
366 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 20:54:30.82 ID:TgM5B6C10
2chやってりゃわかるだろ>>のことだよ
367 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:16:08.41 ID:Rjx9vhxn0
なぜXpが@Vista32bit?
4ギガまでしかサポートしなかったかというと、4096メガバイト…これたぶん16bit表現値一杯だもんな。実アドレス=仮想アドレス管理の
メインテーブル操作アルゴがそこまでしか対応してなかった。
368 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:23:14.32 ID:s03BnMpY0
チューリング機械を勉強しとくとすんなりわかる
369 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:26:28.46 ID:JPsheM9p0
関数とセットで覚えないとその利便性がいまいちよくわからんと思う
370 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:27:23.98 ID:4MqJlan70
>>367 機械翻訳した文章そのままレスにすんなよ
371 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:28:46.51 ID:Rjx9vhxn0
まーな 関数が格納されてるアドレスまでわかんのな、それがあーなるほど便利という状況は思いつけないがまだ。
372 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:29:24.07 ID:1G40gxja0
難しいという固定概念が邪魔してる
はじめから丁寧にやれば悩むことはない
373 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:31:18.25 ID:Rjx9vhxn0
>>370
池沼は寝ろよ、巨人の邪魔になんじゃねおまい。
374 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:34:26.99 ID:n1RpEoQP0
K&Rがすべて悪い
C#とかJavaとかポインタを覆い隠してくれてる言語はいいよな
ただ、Javaはrefとstructを用意しとけ、とは思う
376 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:35:49.27 ID:Rjx9vhxn0
S&Mじゃねーかな…
377 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:37:46.32 ID:vvXK0AFk0
改造コードサーチしてる奴は余裕で分かる
378 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:37:50.91 ID:Rjx9vhxn0
ちなみにC#は統一教会謹製という話 いろいろバックドアー完備でも自己責任。新自由主義度うp版。
379 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:40:41.31 ID:vvXK0AFk0
他の言語でバックドアを作れないとでも思ってるのか
380 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:43:29.05 ID:ckBM97Ko0
>>311 おー。
関数ポインタが、どうしてそう表記するのか意味を初めて知ったわw
C++で*と&使う時の差がわからん
382 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:44:38.18 ID:Rjx9vhxn0
>>379
しらないまにというとこがみそ。統一教会は、フリーで配るときはなにか魂胆がある。新自由主義に秘密のトンネル献上。
「ポインタを使うプログラムは時代遅れの悪いプログラム」
↑これって本当なの?
384 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 21:49:14.53 ID:ckBM97Ko0
>>381 おまおれ。キャストと組み合わせると更に混乱が増加したわ。
static_castだと合ってるのに、reinterpret_castにしたらアドレスがズレるとか色々俺にはムリだったわ・・・
385 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 22:49:07.74 ID:vvXK0AFk0
なんで全角岩手がいるんだよ
ろくに知識もなく馬鹿すぎて誰も相手にしないぞ
絵スレにこもってろよ
>>381 値渡しをconst参照渡しにすると無駄なコピーが減ってパフォーマンスがよくなる。
ただし、const参照は一時オブジェクトを受け取れる。
そして、一時オブジェクトは一時を過ぎるとガラスの靴も残さず消え去る。
そうすると、このconst参照は不正なオブジェクトを指してることになる。
C++の深淵に飲み込まれてウアァァァってなるw
てかさ、参照の参照はなしだけど、条件を満たす場合だけ参照の参照は参照
扱いしようぜ?とか、右辺値参照とかムーブセマンティクスとかC++ウザすぎ。
>>383 考え方といてはアリだと思う。
ただ、そういう方針で実装するならCを使っちゃダメ。
389 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 23:03:32.38 ID:Rjx9vhxn0
>>386
相手にできないのは敏感なやらかい部分を衝いてるからで
CにBASIC当時の親切丁寧教示法を持ち込むのは慣例じゃないんだよねえという態度と姿勢。
391 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/30(水) 23:06:04.43 ID:Rjx9vhxn0
いきなしアテナイがスパルタんなりゃあがったとをれは四半世紀思ってんで。ぽこちんもようかぢりつきまふな成果もださづちまちま。
392 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 00:13:44.66 ID:CngE66Sl0
ポインタぐらいうまく使えないプログラマがいくら高水準な言語で書いても、結局は悪いプログラムしか書けないんじゃないですかね
393 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 00:17:21.27 ID:/wqVGL1w0
まずノイマン型コンピューターがどうやって動いてるかを勉強した方がいい
配列と合わせて教えたら理解しやすいと思うんだけどなあ。
395 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 00:36:08.80 ID:d2Mp73Vj0
>>353 そういう効率厨なプログラマ達が行き着くところは結局アセンブラ
CPUのアーキテクチャ、コンパイラの癖がわかってくるとCでもある程度書けるが
Cでも物足りないことが多々出てくる
>>1←これがポインタ
↑
ここを右クリックした時にでるURLがアドレス
397 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 00:40:53.41 ID:3gmHVuSA0
頭の中でメモリマップが描けるようにならんと難しいよね
シンクロメモリーじゃなくってシンロクノメリーっていう事と同様の意味だと理解してい
399 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 00:52:43.92 ID:WqlMnN1zi
ポインタのポインタの必要性がさっぱりわからん
401 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 04:45:44.13 ID:36daqNeI0
ポインターってメインテーブルのステップアドレスなのな、仮想アドレスに飛ぶためのデーターの格納された。
402 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 05:09:48.41 ID:36daqNeI0
えっそんな簡単なことを今まで茫洋と韜晦解説し続けてきたの?と問われればそのとおりとしかいーよーない。
403 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 05:44:09.72 ID:bn8AnorZ0
例えば、大量の書き込みの中から“ポインタ”という文字列を含む書き込みだけを抽出して、それらをIDについてソートして表示したいとする。
そのとき、書き込みの内容丸ごとを要素とする配列を作って、そこに抽出した書き込みを保存して、その配列をソートするよりも、
書き込みへのポインタを要素とする配列を作って、そこに抽出した書き込みへのポインタを保存して、その配列をソートするほうが効率がいい。
このとき、書き込みへのポインタの配列は、ポインタのポインタで表すことになる。
ポインタが分からないとか都市伝説だろ
405 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 06:04:00.83 ID:36daqNeI0
>>403
あなたはメモリーマップが頭にあるので への に拘泥してるようだが日本語としては 書き込みのポインター、
カキコのポインター のほうが了解が広がるんでねーか。
カキコとその抽出単語で対照して、まあ、レス番号だけ拾うのはまあ普通かな、処理として。全文格納せずに。ただ
IDと照合したいだけならね。
406 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 06:07:19.14 ID:36daqNeI0
書き込みというと漠然としてるがカキコというと、レスひとつ全体のイメージシフトが強いこととかは
これ言語感覚だかんな、2ちゃんいりびたり度とか。
407 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 06:11:12.25 ID:36daqNeI0
ちなみにもっと簡単なたとえがあんだけど今保留。
408 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 06:23:08.61 ID:QcWZlklb0
409 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 06:28:46.65 ID:36daqNeI0
>>408
ネカマにいわれてもぴんとこねーなー。
410 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 07:38:33.72 ID:Cj8zdOaf0
>>400 可変長な多次元配列を作ると
多重ポインターになるだろ。
412 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 12:51:28.94 ID:36daqNeI0
ん?
まあ
配列は、リソースイーターなんだよな。まじで簡単にオーバーフローする。
413 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 12:56:17.23 ID:36daqNeI0
したっけ リソースコストの概念とか提示すればいいのに…まあ…率直なほど、いらいらする癖が四半世紀だと、
今後ご苦労されたりしち。
414 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 13:01:33.32 ID:vxZl+5K5I
また全角岩手さんが暴れてるのか・・・
こんなところに粘着してる暇があるなら
前に複雑過ぎて自分には無理だとかいってた
コンパイラの理論でも勉強すりゃいいのに
学部の半期の講義でカバーできる内容だぞ
アセンブラ作ったんならもうちょい勉強すればいいだけだよ
415 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 13:43:53.74 ID:36daqNeI0
>>414
BASICをCに翻訳すればいいおと聞いたのでその路線だと楽だなっ♪と。今、Cの下調べ。
416 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 13:46:40.99 ID:36daqNeI0
ちなみにボキがつくったのはアセンブラでなく逆アセンブラ。失望しても、よいのだぞ。まあ4bitエミュつこうて、ははあんとは
おぼろげに思ったがマシン語構造。ああきてくちゃあ
417 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 14:55:40.97 ID:36daqNeI0
>>6 int* p,q;
でpとqがポインタと勘違いするミスを防ぐ為に
int *p,q;
が正しい
419 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 15:42:47.60 ID:osQyhLgW0
>>418 それ間違えてもコンパイルエラーになるけどな
420 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 16:07:29.42 ID:z1nZty4k0
int* p;
int P;
本当は言語レベルでこれを分けるべきだったけど
当時は短くできるのが普通みたいな時代だから
int* p,q;
のような不幸な記述も通ってしまう
421 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 16:17:24.80 ID:LGM5XBwh0
アセンブラやっとけよ
422 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 16:18:13.56 ID:i0d1q/8C0
1行には1変数ずつ書けよ
混乱するだけだ
>>181 そこはvolatile宣言でしょ
演算は別の変数で行って最後に代入
424 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 19:29:57.67 ID:eppIj3LS0
英語と一緒でわざと難しく教えてるんだろ
Cを万人に使われると困るのは間違いないけどな
426 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 19:38:51.37 ID:FUSP4m790
>>424 そういう話ではないと思うよw
intとint*をわければいいってだけだろ
まあC言語でも
intって書くと全部int型
int*って書くと全部int*型
ってやってれば迷う人が減ったかもね
int a,b,c,d;<-全部int型
int* e,f,g,h;<-全部int*型
int *p,q;<-こういうのは認めない
とかさ
427 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 19:55:40.91 ID:kYC1EOJW0
>>1は説明がウンコすぎるだろ
CPUの〜命令が〜とかなんの意味も無い
混乱させるだけ
428 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 19:58:22.81 ID:+i3KPDwo0
>>427 Cじゃload/storeは意識しないもんな
429 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 20:00:34.65 ID:B9RwgTa20
ポインタ理解できないってことは配列とか文字列とかも分かってないってことだよな
もうやめたら
430 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 20:00:53.34 ID:T0H/rlK90
就職してc++勉強させられてソフトウェア開発やらされてんだが、これって未来はあるの?
可能なら他業種逃げた方がいいの?
431 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 20:03:24.54 ID:0QYRqPbw0
「させられて」の時点でプログラマとしての資質に欠けてる
転職をおすすめする
432 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 20:06:27.13 ID:I4PWs9Vv0
433 :
番組の途中ですがアフィサイトへの転載は禁止です:2013/10/31(木) 20:07:22.87 ID:T0H/rlK90
やっぱ好きな人じゃないと無理か
>>430 ちゃんとこなせたのなら才能あるよ
他の世間一般のオブジェクト言語なら大丈夫だからがんがれ