[過去ログ] C言語なら俺に聞け 151 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
798: デフォルトの名無しさん (アウアウウー Sa1f-Y/KN) [] 2019/06/05(水) 10:04:09.95 ID:Fd++qFdya(1) AAS
激しいステマ
799
(1): デフォルトの名無しさん (JP 0H73-Ywhw) [sage] 2019/06/07(金) 16:33:58.73 ID:uIEpx76AH(1) AAS
真って0でしたっけ?1でしたっけ?0以外でしたっけ?1以外でしたっけ?
800: デフォルトの名無しさん (アウアウエー Sa93-N0IE) [sage] 2019/06/07(金) 17:02:27.40 ID:HLWbZT6Fa(1) AAS
>>799
bool型の1です。
801: デフォルトの名無しさん (ワッチョイ cde8-LJAA) [sage] 2019/06/07(金) 17:27:02.62 ID:RHh4qcVs0(1/2) AAS
0以外は真として扱われることが多いな。
0は明示的にfalseになると思う。
そのfalseの否定がtrue。
802: デフォルトの名無しさん (ワッチョイ d769-0JeU) [sage] 2019/06/07(金) 17:31:47.53 ID:OLbvc6Nr0(1) AAS
論理演算結果を整数化したら 偽が0 真は1
整数を論理評価したら 偽が0 で真はそれ以外
803: デフォルトの名無しさん (ワッチョイ 8763-FAmt) [sage] 2019/06/07(金) 17:33:03.09 ID:sehGKr170(1/2) AAS
#define TRUE (1==1)
#define FALSE (!TRUE)

こんな事書いてたな
値がいくつなのかは気にしなかった
804: デフォルトの名無しさん (ワッチョイ f9d2-K3Ee) [sage] 2019/06/07(金) 20:41:26.72 ID:NHeyKhkN0(1) AAS
OR EAX,EAX
JZ FALSE
JNZ TRUE

こんなんか?
805: デフォルトの名無しさん (ワッチョイ cdab-BGv3) [sage] 2019/06/07(金) 21:31:11.89 ID:51aJPRpO0(1/3) AAS
TRUEと比較するなって先輩に言われたろ
806: デフォルトの名無しさん (ワッチョイ a101-0JeU) [sage] 2019/06/07(金) 21:37:49.54 ID:e6zybBXY0(1/2) AAS
!!a == TRUE ならセーフになると思われるー
807
(2): デフォルトの名無しさん (スプッッ Sddb-7MqU) [sage] 2019/06/07(金) 22:15:27.47 ID:RQudHa2vd(1) AAS
論理演算では1が真なのに終了は1が異常終了なのはなぜですか?
1が正しく0が間違いというイメージなのですが
808: デフォルトの名無しさん (ワッチョイ cde8-LJAA) [sage] 2019/06/07(金) 22:18:06.19 ID:RHh4qcVs0(2/2) AAS
昔はintを返す習慣が多分にあったのでその習慣によるが、自分は異常終了は-1返してたな。
809: デフォルトの名無しさん (アウアウカー Sad3-N0IE) [sage] 2019/06/07(金) 22:19:30.98 ID:0dWbT8qma(1/2) AAS
>>807
いや、boolが戻り値なら真を成功にすることがむしろ多いと思う。
「エラーを返す」関数の需要が多いということではないか。
810: デフォルトの名無しさん (ワッチョイ cdab-BGv3) [sage] 2019/06/07(金) 22:21:18.54 ID:51aJPRpO0(2/3) AAS
エラーの種類を沢山返せるから
811: デフォルトの名無しさん (ワッチョイ a101-0JeU) [sage] 2019/06/07(金) 22:23:25.13 ID:e6zybBXY0(2/2) AAS
正常というのは1つの状態しかないが
異常には色々な種類があるのでそれを区別するためにコードとして返したい

というのと

2値しかない真偽をどう値に配分するか

というのを同列に並べるとパニック。 C言語では別のものとして割り切る

なぜC言語では偽を0に割り当てたのか?という問いの答えを求めているのならば…
俺は知らない
812: デフォルトの名無しさん (アークセー Sx63-gnfa) [sage] 2019/06/07(金) 22:23:54.80 ID:Bjvb97BWx(1) AAS
>>807
正常は 0でいいけど、異常はいろいろな状態の別を報告できるようにでは
813
(1): デフォルトの名無しさん (ワッチョイ cdab-BGv3) [sage] 2019/06/07(金) 22:30:40.09 ID:51aJPRpO0(3/3) AAS
ソフト会社に長年いて開発者からこの質問は初
OSインストールできませんなんてすごく高度なんだなって思った

コマンドのテストでコマンドの戻り値ってあるんですがなんですか?
814: デフォルトの名無しさん (アウアウカー Sad3-N0IE) [sage] 2019/06/07(金) 22:36:39.33 ID:0dWbT8qma(2/2) AAS
>>813
windowsの終了ステータスの確認の仕方とか忘れるしなあ。
言葉で出てくる結果しか見れないなんて普通だと思うわ。
815: デフォルトの名無しさん (ワッチョイ 77f2-to8s) [sage] 2019/06/07(金) 22:42:11.06 ID:xj9RlcCA0(1) AAS
0が偽なのにnoerrというイカれた慣習はどうして生まれたんだろうねぇ。
816: デフォルトの名無しさん (アークセー Sx6f-gnfa) [sage] 2019/06/07(金) 22:58:47.67 ID:DaiiMVNnx(1) AAS
最初に誕生した OS、system/360 の JCLでも、正常は 0、警告が 4だったか 8だったかで、異常が 8だったか 16だったかだったな
z/OSでも同じだろうけど
知らんけど
817: デフォルトの名無しさん (ワッチョイ 8763-FAmt) [sage] 2019/06/07(金) 23:33:27.02 ID:sehGKr170(2/2) AAS
幸福な戻り値はどれも似たものだが、不幸な戻り値はいずれもそれぞれに不幸なものである。
818: デフォルトの名無しさん (ワッチョイ 9701-LJAA) [sage] 2019/06/07(金) 23:33:41.86 ID:nzmV+Edn0(1) AAS
if (error == 0)
で違和感ないじゃん
819: デフォルトの名無しさん (ワッチョイ e1f6-to8s) [sage] 2019/06/08(土) 03:30:43.12 ID:KzIynz9K0(1/4) AAS
0 informational
1 warning
2 error
3 severe
4 critical
820: デフォルトの名無しさん (ワッチョイ 417b-sn8J) [sage] 2019/06/08(土) 11:21:36.15 ID:5iouJYEP0(1) AAS
返り値0でエラーなしはUNIXのコマンド終了ステータス以来の慣習かな。
「正常終了」は状態が1種類しかないけど、失敗は「どう失敗したか」で
複数の状態があるから、正常で0、他の値はエラーコードってのは便利でしょ。

論理演算子の結果で true false の1と0は、論理学の数値表現を
プログラム言語にそのまま写しこんだからじゃないかと。

関数は一般にエラー状態を返り値で返す、と思っていれば
正常 == 返り値0 == false は違和感ないかと。
このルールから外れてるのは「失敗時にNULLを返す」タイプの関数で、
結構たくさん存在するのが困ったところだけど。
821: デフォルトの名無しさん (ワッチョイ c379-uQfi) [] 2019/06/08(土) 11:32:28.80 ID:7CBKOF2N0(1) AAS
Cでは同一のもとして動かせてしまうが
そもそもエラーコードとboolを同一視してる時点で論外なんだが
822: デフォルトの名無しさん (ワッチョイ 77f2-to8s) [sage] 2019/06/08(土) 11:38:57.76 ID:WG7jlf5q0(1/2) AAS
論理型を別に設けずに整数型で代用してしまおうというアイデアはBやCの言語仕様をコンパクトに
抑えるのに役立ったが、今となってはプリプロセッサマクロと同じくらいの悪しき遺産だなぁ。
823: デフォルトの名無しさん (ワッチョイ e1f6-to8s) [sage] 2019/06/08(土) 14:58:06.03 ID:KzIynz9K0(2/4) AAS
え、何か問題あるか?
824: デフォルトの名無しさん (ラクペッ MM65-nBye) [sage] 2019/06/08(土) 15:35:48.39 ID:X+3AMWAUM(1) AAS
C99以降であれば_Bool型を使えばいいのでは?
825: デフォルトの名無しさん (ワッチョイ e1f6-to8s) [sage] 2019/06/08(土) 15:41:42.45 ID:KzIynz9K0(3/4) AAS
ダメだこりゃ
826
(1): デフォルトの名無しさん (ブーイモ MM5b-XTNn) [sage] 2019/06/08(土) 15:41:57.08 ID:bm2ApAetM(1) AAS
正常時1で異常時0を返す関数が混ざってたり
正常時ポインタで異常時ヌルポ返す関数があったり
それらの関数の返り値を全部 if でチェックしててカオスだったことがあります
827
(1): デフォルトの名無しさん (ワッチョイ e1f6-to8s) [sage] 2019/06/08(土) 15:56:39.68 ID:KzIynz9K0(4/4) AAS
BOOLを返す関数が負数を返したかどうか調べにゃあかんやつとかな
828: デフォルトの名無しさん (ワッチョイ 77f2-to8s) [sage] 2019/06/08(土) 16:38:04.87 ID:WG7jlf5q0(2/2) AAS
ワインバーグの本にあったなあ。ドル紙幣はみんな同じ色、同じサイズで見分けがつきにくいけど、
それが常識だと思っている人は、一定の確率で間違えてしまうことも世界の法則で仕方のない
ことだと思っているとか。
829: デフォルトの名無しさん (ワッチョイ 13f9-K3Ee) [sage] 2019/06/08(土) 17:13:44.27 ID:auwh2hzj0(1) AAS
>>827
GetMessage()の悪口はいくら言ってもよいぞ
DWORDにしとけよ
830
(1): デフォルトの名無しさん (ワッチョイ 7b73-uQfi) [sage] 2019/06/08(土) 18:39:07.71 ID:jm0tDZO60(1/2) AAS
>>826
カオスっていうかこれ普通じゃない?
標準ライブラリのラッパー書くとき互換性保つために0成功にするでしょ
で他のオレオレライブラリはboolという
831: デフォルトの名無しさん (ワッチョイ 9bd2-9700) [] 2019/06/08(土) 18:53:36.19 ID:jXs/KV+s0(1) AAS
戻り地がboolのときはtrueが成功
intのときは0が成功なんだよ
832: デフォルトの名無しさん (ワッチョイ 9701-LJAA) [sage] 2019/06/08(土) 19:39:01.75 ID:ogfAGAzJ0(1/2) AAS
bool型ができたのはC99のときなので
833: デフォルトの名無しさん (ワッチョイ 7b73-uQfi) [sage] 2019/06/08(土) 19:42:23.71 ID:jm0tDZO60(2/2) AAS
boolぐらいなにもインクルードしなくても使わせてくれぽよ
834: デフォルトの名無しさん (ワッチョイ 9701-LJAA) [sage] 2019/06/08(土) 19:54:54.89 ID:ogfAGAzJ0(2/2) AAS
「歴史的理由」という奴
835: デフォルトの名無しさん (アウアウウー Sa1d-I703) [] 2019/06/08(土) 21:28:56.66 ID:gCLo3iIIa(1) AAS
>>830
それのせいでPrelではシステムコールと同名の関数の返り値がいまいち統一取れてなかったりして、結局マニュアル見ながら個別に覚えざるを得なかったりする。
Perlはだいたいは1が成功でundefが失敗なんだけどね。(undefはCでのNULLみたいなもの。未定義を意味する。定義されてて値が0の時とは違うが、書き方によっては同じように扱えることもある)。
836: デフォルトの名無しさん (アウアウエー Sa93-N0IE) [sage] 2019/06/08(土) 21:58:16.60 ID:nbjDJ9kZa(1) AAS
今C++にあるoptionalだっけ?
あんな感じの有ってもいいな。かなりうざい感じになるから使わんか。
837
(1): デフォルトの名無しさん (ワッチョイ c38c-LJAA) [] 2019/06/09(日) 11:06:53.62 ID:42ARNGRn0(1) AAS
インクルードをURLで引っ張ってこれたら面白いのに。
838: デフォルトの名無しさん (ワッチョイ cdab-BGv3) [sage] 2019/06/09(日) 11:17:01.45 ID:ZHA7gcDF0(1) AAS
一発でウイルス仕込まれそう
839: デフォルトの名無しさん (ワッチョイ ebb6-fbqF) [] 2019/06/09(日) 11:59:40.15 ID:W83DJxDE0(1) AAS
コスパ最強の副業「動画編集」で稼ぐ方法【生ハム登場】
https://www.youtube.com/watch?v=0ogHVUKoa8k

【最強の副業】動画編集で稼ぎ続ける人の条件【未来予想】
https://www.youtube.com/watch?v=e-IA4ePHzOs

【おすすめ副業・在宅ワーク】「動画編集」は初心者でも時給1,500円狙えます。
https://www.youtube.com/watch?v=8gYAqdSsI98&t=168s

【与沢翼】動画編集素人でも本気でやれば個人で月収1000万も夢ではないですよ。
実は動画ってすぐプロと同じクオリティで作れちゃうし月収20万はすぐですよ
https://www.youtube.com/watch?v=ws55W45OLbE

センスのいい映像を短時間で編集する方法
https://www.youtube.com/watch?v=k0TT4Tbf_Ec

840: デフォルトの名無しさん (ワッチョイ 5b02-EF/o) [] 2019/06/09(日) 14:38:56.62 ID:zgQq0a060(1) AAS
>>837
/use/include ディレクトリをNFS マウントでもしとけ。
841
(1): デフォルトの名無しさん (スプッッ Sddb-EU19) [sage] 2019/06/11(火) 14:18:29.61 ID:suKt4vmPd(1/2) AAS
すみません、質問があります。

環境はlinuxです。
ある共有ライブラリlibA.soをロードするプログラムbがあります。
このプログラムbをlibA.so抜きでgccでビルドすることはできるでしょうか?
もちろん実行時にはlibA.soは用意します。
842: デフォルトの名無しさん (アウアウウー Sa1d-I703) [] 2019/06/11(火) 15:09:21.38 ID:UmxJxqMia(1/2) AAS
>>841
リンクされる関数やグローバル変数が全て揃ってれば誤魔化し効くのではないかな。
843: デフォルトの名無しさん (アウアウエー Sa93-N0IE) [sage] 2019/06/11(火) 16:20:37.89 ID:X43Szptna(1) AAS
シンボルだけ定義したsoファイルを用意するのが普通ではないかと
844: デフォルトの名無しさん (ワッチョイ 73a5-17Kf) [sage] 2019/06/11(火) 18:35:03.43 ID:z8NS6dzQ0(1) AAS
ダミーファイルを用意とか、かっけえな
845: デフォルトの名無しさん (アウアウウー Sa1d-I703) [] 2019/06/11(火) 20:38:50.54 ID:UmxJxqMia(2/2) AAS
そ、そうか?
846: デフォルトの名無しさん (スプッッ Sddb-EU19) [sage] 2019/06/11(火) 21:26:50.36 ID:suKt4vmPd(2/2) AAS
ビルド用のsoファイルを用意する、でいこうと思います。ありがとうございました!
847
(1): デフォルトの名無しさん (アウアウカー Sad3-N0IE) [sage] 2019/06/11(火) 22:01:48.05 ID:vnr40KfNa(1) AAS
スタブってやつね。
dlopen使うと基本そうなると思う。
もともと自動的なシンボル解決してる場合は無視できたかも。
848: デフォルトの名無しさん (ワッチョイ 5b12-d1P0) [sage] 2019/06/12(水) 00:00:59.88 ID:82Q6hISi0(1) AAS
>>847
お前は何を言ってるんだ
849: デフォルトの名無しさん (ワッチョイ 6b2c-MqbY) [sage] 2019/06/12(水) 02:05:00.40 ID:vWkgJgOw0(1) AAS
たぶん、DLL import, export みたいな定義ファイルさえあれば、コンパイルできるだろ?
850: デフォルトの名無しさん (アウアウウー Sa1d-I703) [] 2019/06/12(水) 09:25:53.48 ID:apqCeTcNa(1) AAS
DLL? Windowsだとそうなの?
851: デフォルトの名無しさん (ワッチョイ d769-0JeU) [sage] 2019/06/12(水) 10:40:58.95 ID:QpFBULjO0(1) AAS
a) dll import キーワードつきのヘッダでコンパイル
 DLLを読み込みシンボル解決する .lib をリンク
 実行時には dll 読み込みをやってくれる (無いと文句言う)

b) 自前で DLL読み込んで GetProcAddress で関ポにセットして、
その関ポを呼び出すラップ関数を用意
  自前ロードしてるので、実行時に無い時別の処理の記述が可能になるん
852: デフォルトの名無しさん (スフッ Sdba-58Oz) [sage] 2019/06/13(木) 13:22:19.29 ID:tXoihok+d(1) AAS
大学でc言語を学び始めました
ポインタが意味不明でした
何がわからないのかわからない
853: デフォルトの名無しさん (アークセー Sxbb-6CEg) [sage] 2019/06/13(木) 13:54:13.91 ID:wTJRUi3Ix(1) AAS
メモリとアドレスの概念が分かってないからじゃね?
854: デフォルトの名無しさん (ワッチョイ 03dc-9ye8) [sage] 2019/06/13(木) 19:07:04.64 ID:mXxRrk+K0(1/2) AAS
現実世界にポインタと同じものを説明する概念がないから簡単な説明のしようがないんだよなぁ。住所録とか余計こんがらがるし。
素直に本を沢山読んでプログラムを組んで慣れるしか無い
855: デフォルトの名無しさん (アウアウエー Sa52-H7EU) [sage] 2019/06/13(木) 19:27:38.29 ID:HQZYLHkVa(1/2) AAS
本にページ数がない世界?
856
(1): デフォルトの名無しさん (ワッチョイ 677d-58Oz) [sage] 2019/06/13(木) 20:56:34.51 ID:8abVSTNa0(1) AAS
アドレスは&つけてprintfした時に出てくるやつでしょ?
箱のラベルみたいなのだとかなんとか言われた気がする
メモリは単純に容量?

別関数で計算した値をmain関数に持ってくる時にポインタを使えばreturnがいらないだとかコピーじゃなくて直接数値を変えるから処理が楽だとか書いてあるけど結局普通に代入するのに比べて利点がよくわからない
857: デフォルトの名無しさん (ワッチョイ f3ab-HbHi) [sage] 2019/06/13(木) 21:10:17.33 ID:mvKDv9Bs0(1) AAS
タワーマンション
858: デフォルトの名無しさん (アウアウエー Sa52-H7EU) [sage] 2019/06/13(木) 21:10:41.15 ID:HQZYLHkVa(2/2) AAS
何かの容量と言ったときの「何か」がメモリです。
利点は基本的にないです。
859: デフォルトの名無しさん (ワッチョイ 1aad-LWjD) [sage] 2019/06/13(木) 21:22:11.61 ID:0e3y3dPM0(1) AAS
データが存在する場所
860: デフォルトの名無しさん (ブーイモ MM7f-4ioR) [sage] 2019/06/13(木) 21:44:19.75 ID:VQ1VjdQ1M(1) AAS
みんな思い思いのモデルで遊んでるから、パパは箱モデル出しちゃうぞ
861: デフォルトの名無しさん (ワッチョイ 3352-9ye8) [sage] 2019/06/13(木) 21:45:29.38 ID:vVgcrwZV0(1) AAS
うさみみハリケーンでメモリ覗いてチートしよう!
862: デフォルトの名無しさん (ワッチョイ 4e63-9ye8) [sage] 2019/06/13(木) 21:52:15.32 ID:o6WQvi940(1/2) AAS
天使のような微笑みに
時は立ち止まる
863: デフォルトの名無しさん (ワッチョイ 03dc-9ye8) [sage] 2019/06/13(木) 22:05:37.40 ID:mXxRrk+K0(2/2) AAS
なんか分からない部分のコード示してもらわないと
ここの有能な人たちもどう説明したらいいか分かんないから雑談始まったがw
864: 蟻人間◆T6xkBnTXz7B0 (ワッチョイ 8b01-1i7F) [sage] 2019/06/13(木) 22:14:30.76 ID:wtG0GGqp0(1/2) AAS
1ビットが0か1かの二通りを表せる情報量。
1バイトは0〜255までの256通り(2の8乗)を表せる情報量で8ビットに等しい。
1バイトを複数並べたのがメモリーで、各バイトの位置がアドレス。
865: デフォルトの名無しさん (ワッチョイ 9a79-YCmz) [sage] 2019/06/13(木) 22:16:01.81 ID:dMX2AWSU0(1) AAS
このスレにエスパーいるの?
866: 蟻人間◆T6xkBnTXz7B0 (ワッチョイ 8b01-1i7F) [sage] 2019/06/13(木) 22:22:12.70 ID:wtG0GGqp0(2/2) AAS
アドレスに型情報を加えて、先頭アドレスを起点として配列のようにアクセス可能にしたものがポインタ。
しかし、配列は実体を要求するが、ポインタは実体を要求しない。ヌルポインタは、何も指し示さないポインタ。
867: デフォルトの名無しさん (ワッチョイ 4e63-9ye8) [sage] 2019/06/13(木) 22:29:06.28 ID:o6WQvi940(2/2) AAS
ポインタ配列ってやると実体のない配列になるのかなw
868: デフォルトの名無しさん (ワッチョイ 5bda-Fbrg) [sage] 2019/06/14(金) 00:57:04.32 ID:v+vUDnm40(1) AAS
ポインタ配列?

ポインタの配列 *array[]
配列のポインタ (*array)[]
869: デフォルトの名無しさん (ワッチョイ a37b-RuXw) [sage] 2019/06/14(金) 06:12:05.65 ID:hJXFGwRg0(1) AAS
“メモリ”って言葉がフラッシュメモリのような、
ストレージデバイスのイメージになってるのも
説明を難しくしてる要因かもしれないね。

メモリは記憶単位ごとに数字で番地が振られていて…と言っても、
「メモリってディレクトリ構造中のファイルとして記憶するんじゃないの?」
みたいな感じに、互いの言葉の意味がチグハグで。
870: デフォルトの名無しさん (ワッチョイ 3352-9ye8) [sage] 2019/06/14(金) 06:41:21.97 ID:f7k/n5Cq0(1/2) AAS
RAMとROMの違いなんて今の時代説明しても分かる人の方が少ない気がする
871: デフォルトの名無しさん (ラクペッ MM73-WxcC) [sage] 2019/06/14(金) 07:27:48.00 ID:Q6PAXFreM(1) AAS
>メモリは記憶単位ごとに数字で番地が振られていて

キャッシュメモリ「せやろか?」
872
(1): デフォルトの名無しさん (ワッチョイ 1aa5-Rc2r) [sage] 2019/06/14(金) 07:30:51.51 ID:0tg6L2nj0(1) AAS
https://i.ytimg.com/vi/paQ3zIsz1-8/maxresdefault.jpg

https://upload.wikimedia.org/wikipedia/commons/d/d2/Pamiec_bebnowa_1.jpg

やっぱりコレを見せれば理解しやすいんでね?
873: デフォルトの名無しさん (アークセー Sxbb-6CEg) [sage] 2019/06/14(金) 08:11:51.98 ID:9CL7rguOx(1/2) AAS
>>872
磁気コアメモリと、右側はRAMACか?
874: デフォルトの名無しさん (ブーイモ MM7f-4ioR) [sage] 2019/06/14(金) 08:31:34.65 ID:0nKPup2VM(1) AAS
磁気ドラムだよ
ランダムアクセスでさえないのにメインメモリにしたとかいう
875
(2): デフォルトの名無しさん (ワッチョイ 9712-LWbF) [sage] 2019/06/14(金) 09:02:07.63 ID:vN7LRDhO0(1) AAS
>>856
ポインタ=君と感覚を共有してる全く同性能の影分身だ。
君の価値が100万なら、影分身は1円で作れる。

ポインタのメリットは会社が君を働かせたい時、君を直接雇うと100万円かかるが、影分身を雇うと1円で済むわけだ。
影分身が働いてる間、君は家でエロゲでもしてればいい。

気をつけないといけないのは、仕事中、影分身の腕が切断されたら、エロゲやってる君の腕も切断されるし
影分身が死んだら君も死ぬ。

これ以上わかりやすい説明はないと思うが、どうよ?w
876: デフォルトの名無しさん (ワッチョイ 4e69-oJPG) [sage] 2019/06/14(金) 09:44:07.68 ID:y8r4DOsw0(1) AAS
例えられても伝わらないとさらに混乱させるのが、ポインタと配列周辺の話
877: デフォルトの名無しさん (アウアウウー Sac7-7DQ/) [] 2019/06/14(金) 10:03:42.87 ID:+nXqXsIga(1) AAS
>>875
分身と言ってしまうとそっくりな実体がもう一つあるかのように思ってしまうのではないか?
やはり実体を指し示すものを連想させる何かにした方が良いのではないか?道標とか。
878: デフォルトの名無しさん (ワッチョイ 03dc-9ye8) [] 2019/06/14(金) 10:26:13.82 ID:6se/aPBa0(1/2) AAS
このように、どうわかりやすく書こうとしてもどっかに不都合が生じるのがポインタの説明
素直にコンピュータの仕組みを勉強するしかないんや・・・
879: デフォルトの名無しさん (アークセー Sxbb-6CEg) [sage] 2019/06/14(金) 10:36:21.57 ID:9CL7rguOx(2/2) AAS
ポインタはWindowsのショートカットみたいなもの。
これでもまだ誤解されそうね。
880: デフォルトの名無しさん (ワッチョイ 4e63-9ye8) [sage] 2019/06/14(金) 11:45:14.96 ID:suWeiIcg0(1) AAS
インデックスレジスタを拡張したもの
881
(1): デフォルトの名無しさん (スプッッ Sd5a-PP33) [sage] 2019/06/14(金) 12:26:01.65 ID:2kFHhEHgd(1) AAS
キャッシュとバッファの違いを教えてください
882: 蟻人間◆T6xkBnTXz7B0 (スフッ Sdba-1i7F) [sage] 2019/06/14(金) 12:32:55.71 ID:lQGpZUNAd(1) AAS
キャッシュは次回のアクセスを高速化するためにデータを一時的に保存しておくこと。
バッファはデータを受け止めるために、保存場所を確保するためのメモリー領域。
883: デフォルトの名無しさん (ワッチョイ dfd2-vI2o) [sage] 2019/06/14(金) 14:56:26.65 ID:6Rxhp4270(1) AAS
アセンブラやらせてみる。
884: デフォルトの名無しさん (ワッチョイ 9a01-zlGV) [sage] 2019/06/14(金) 15:05:09.54 ID:AQvHkPsD0(1/2) AAS
>>881
文脈による
汎用機だと二次キャッシュをバッファストレージなんて言ったりすることもあるし
885: デフォルトの名無しさん (バッミングク MM8a-U99L) [sage] 2019/06/14(金) 17:36:32.38 ID:TPMloxQtM(1) AAS
>>875
本体がパンツ下ろしたら影分身も職場でパンツ下ろすんですね分かります
886
(1): デフォルトの名無しさん (ワッチョイ 8b01-2qry) [] 2019/06/14(金) 17:45:59.79 ID:zWOLB0k60(1/2) AAS
ポインタがよくわからないんだけど、普通にメモリアドレス==ポインタって認識なの?

int i;
int *p=&i;
の時に変数iのポインタであるpっていういい方は正しいですか
887
(1): デフォルトの名無しさん (ワッチョイ 3352-9ye8) [sage] 2019/06/14(金) 17:52:24.52 ID:f7k/n5Cq0(2/2) AAS
メモリアドレスは格納されるけど
メモリアドレス==ポインタっていうのは違う気がする
nullだのvoidだのもあるし
888: デフォルトの名無しさん (アウアウカー Sac3-H7EU) [sage] 2019/06/14(金) 17:58:41.54 ID:Soq0+PVxa(1) AAS
iのポインタを格納してるポインタ変数p

値自体を問題にするときはアドレスだが、プログラム中で操作の対象となってる場合はポインタって感じだな。
889: デフォルトの名無しさん (ワッチョイ 4e7b-r4R3) [sage] 2019/06/14(金) 18:21:37.60 ID:Js4PARtC0(1/4) AAS
>>886
ポインタはメモリアドレスと型もってて
メモリアドレスからのデータをその型として解釈する
890: デフォルトの名無しさん (ワッチョイ 8b01-2qry) [] 2019/06/14(金) 18:23:47.92 ID:zWOLB0k60(2/2) AAS
なるほど、なんとなくわかったありがとう。混乱の原因はポインタっていう言葉がいろんな使われ方してるからだった。
891
(2): デフォルトの名無しさん (アウアウウー Sac7-6CEg) [sage] 2019/06/14(金) 18:25:31.19 ID:Kaq8zorwa(1) AAS
こう書くとまた荒れそうだが、ポインターとはアドレスが入った変数である、というのは正しい。
NULLは0番地を特別扱いしてるだけだし、void *もあくまでアドレスだ。
892: デフォルトの名無しさん (ドコグロ MM92-zlGV) [sage] 2019/06/14(金) 18:32:50.01 ID:N06YB3IUM(1) AAS
>>887
nullはまだしもvoidは関係なくね?
893: デフォルトの名無しさん (ワッチョイ 4e7b-r4R3) [sage] 2019/06/14(金) 18:34:58.75 ID:Js4PARtC0(2/4) AAS
荒れる要素なくない?
メモリアドレスを保持する整数と型を組合せてあるだけだし

void*はアドレス保持するだけの変数って意味じゃないの
894
(1): デフォルトの名無しさん (ワッチョイ 0301-oJPG) [sage] 2019/06/14(金) 18:35:21.76 ID:6z9b86iK0(1/3) AAS
void *p;

p++ を許すのは GCC拡張だっけか
895: デフォルトの名無しさん (ワッチョイ 9a01-zlGV) [sage] 2019/06/14(金) 18:37:46.52 ID:AQvHkPsD0(2/2) AAS
>>891
「正しい」とか書くと荒れる元にしかならん
(初心者のうちは)…「という理解でいい」ぐらいにしとき
896: デフォルトの名無しさん (アウアウウー Sac7-LNjH) [sage] 2019/06/14(金) 18:39:36.73 ID:BA+tS0rQa(1) AAS
>>891
NULLの件はそれ逆だろう。
実際の0番地を特別扱いにしているのではなく、「どこも指さない特殊なアドレス」を表記するために整数0を使用しているだけで、0番地が特別な訳ではないはず。まあ実際にメモリ割り当てで0番地を割り当てることはしないだろうけど。
void*も、型を指定しないポインタを表すのに使っている型の指定であり、アドレスというのはおかしい。
897
(1): デフォルトの名無しさん (ワッチョイ 4e7b-r4R3) [sage] 2019/06/14(金) 18:45:34.86 ID:Js4PARtC0(3/4) AAS
>>894
サイズどういう扱いなのそれ
1-
あと 105 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.252s*