C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/
C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf
C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/
前
http://mevius.2ch.net/test/read.cgi/tech/1494508803/
http://www.geocities.jp/c_cpp_cs/about_c/
C言語なら俺に聞け 141 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2017/07/17(月) 21:06:47.63ID:J4JGo3XO631デフォルトの名無しさん
2017/08/05(土) 19:39:51.34ID:vX9Ad9Pg632デフォルトの名無しさん
2017/08/06(日) 00:10:43.00ID:+MX/dj54 >>630
「では」 がconst
「では」 がconst
633デフォルトの名無しさん
2017/08/06(日) 00:11:43.92ID:ljqAECQw forkで子プロセスを複数生成した際に、子プロセス間で変数を共有、または子プロセスから他の子プロセス(親は同一)の変数にアクセスする方法って有りませんか?
共有メモリ以外でお願いします
共有メモリ以外でお願いします
634デフォルトの名無しさん
2017/08/06(日) 00:18:14.02ID:+MX/dj54 ファイル経由
635デフォルトの名無しさん
2017/08/06(日) 00:42:21.39ID:LLgtDDDS pipe
636デフォルトの名無しさん
2017/08/06(日) 07:47:08.77ID:D2MwPYUj 大喜利をやれということなのかな
637デフォルトの名無しさん
2017/08/06(日) 07:49:51.80ID:UjkuucW3 ptrace
638デフォルトの名無しさん
2017/08/06(日) 10:57:12.05ID:3gNA0Uyl >>633
内部的には共有メモリと同じなんだろうけどmmapなんかどうだ?
内部的には共有メモリと同じなんだろうけどmmapなんかどうだ?
639633
2017/08/06(日) 12:30:30.67ID:QIgcqg1l すみません自決しました
640デフォルトの名無しさん
2017/08/06(日) 13:28:03.88ID:fp1GLRR7 書き込めると言うことは自決は失敗か
641デフォルトの名無しさん
2017/08/06(日) 14:15:03.73ID:fAxfwMN0 自動で書き込むスクリプト作ったんじゃろ
642デフォルトの名無しさん
2017/08/06(日) 14:32:55.81ID:/dqOVGNE 多倍長演算って10000進法でやってる?
それとも2^n進法?
それとも2^n進法?
643デフォルトの名無しさん
2017/08/06(日) 14:33:22.10ID:nazawjTw644デフォルトの名無しさん
2017/08/06(日) 14:36:56.91ID:nazawjTw >>642
32bit マシンでも 2^32 進数なんて使ってないが...
32bit マシンでも 2^32 進数なんて使ってないが...
645デフォルトの名無しさん
2017/08/06(日) 15:27:01.03ID:3gNA0Uyl646デフォルトの名無しさん
2017/08/06(日) 15:42:53.54ID:LLgtDDDS UNIX SOCKET
647デフォルトの名無しさん
2017/08/06(日) 15:58:13.64ID:pnlX0fdh >>645
どっちにしてもスルーするのが正解
どっちにしてもスルーするのが正解
649デフォルトの名無しさん
2017/08/06(日) 16:31:30.70ID:ThMEkv3I650デフォルトの名無しさん
2017/08/06(日) 16:47:17.37ID:r2XWWSNC651デフォルトの名無しさん
2017/08/06(日) 16:48:57.70ID:r2XWWSNC ポインタを教えてくださいと言ってる初心者に配列使って見せて
「これがポインタだっ どやっ」
笑うしかないな
「これがポインタだっ どやっ」
笑うしかないな
652デフォルトの名無しさん
2017/08/06(日) 16:52:58.17ID:4cVoKrwP やっぱりポインタの勉強するには柴田ぼーよー先生のポインタの本がいいんでしょうか?
653デフォルトの名無しさん
2017/08/06(日) 16:56:06.63ID:r2XWWSNC ID:dUt+j3iSにどんな本使ったか聞いて、それは避けるべきだと思うよ
654デフォルトの名無しさん
2017/08/06(日) 17:02:15.95ID:jhhg/GBw こいつらの反論が反論になっていないな
C分かっていればそのコードが
ポインタ渡しになっていることは直ぐに分かるんだけどね
まぁスルーが得策だよ
ID:dUt+j3iSはID:r2XWWSNCに構ってはいけない
C分かっていればそのコードが
ポインタ渡しになっていることは直ぐに分かるんだけどね
まぁスルーが得策だよ
ID:dUt+j3iSはID:r2XWWSNCに構ってはいけない
655デフォルトの名無しさん
2017/08/06(日) 17:23:37.54ID:OSHq4q+H 問題はそこではなくて、ポインタの話からいきなり仮引数だの実引数だのとかの話に飛躍したことだと思うのだがな
まあだいたい想像は出来る
何故だか初心者本でよく見られる間違いとして、関数の呼び出し側の引数が実引数、関数の受け取り側の引数が仮引数、という説明をそのまま受け入れていたのだろうな
言語によってはその通りかも知れんが、少なくともC言語のJIS X 3010の解釈とは異なっている
まあだいたい想像は出来る
何故だか初心者本でよく見られる間違いとして、関数の呼び出し側の引数が実引数、関数の受け取り側の引数が仮引数、という説明をそのまま受け入れていたのだろうな
言語によってはその通りかも知れんが、少なくともC言語のJIS X 3010の解釈とは異なっている
656デフォルトの名無しさん
2017/08/06(日) 17:28:55.73ID:r2XWWSNC658デフォルトの名無しさん
2017/08/06(日) 17:37:29.70ID:MVEPApHK C言語でもその解釈で全然問題無いと思うけどな俺は
どっちにしてもID:r2XWWSNCはど素人のくせに
質問の仕方も知らない無礼な奴と言う事には間違いはないだろう
どっちにしてもID:r2XWWSNCはど素人のくせに
質問の仕方も知らない無礼な奴と言う事には間違いはないだろう
659デフォルトの名無しさん
2017/08/06(日) 17:44:53.62ID:OSHq4q+H660デフォルトの名無しさん
2017/08/06(日) 17:54:58.87ID:r2XWWSNC >>657
おメーには聞いてねーよ 障害児
おメーには聞いてねーよ 障害児
661デフォルトの名無しさん
2017/08/06(日) 18:16:39.32ID:ThMEkv3I662デフォルトの名無しさん
2017/08/06(日) 19:45:26.91ID:r2XWWSNC663デフォルトの名無しさん
2017/08/06(日) 19:52:07.02ID:OFkcQ32C664デフォルトの名無しさん
2017/08/06(日) 19:55:39.33ID:zQpO4a2U そういやシンタックスシュガーと言えば、昔々こんなのが動いたのを初めて見た時は驚いたな。
https://paiza.io/projects/XOWJRDaMZQIIu9cF5Ex1Ug
本当にポインタ計算してるだけという。
https://paiza.io/projects/XOWJRDaMZQIIu9cF5Ex1Ug
本当にポインタ計算してるだけという。
665デフォルトの名無しさん
2017/08/06(日) 20:53:33.24ID:r2XWWSNC >>659
ガイジには読み取れなかったようだ
> When an array name appears as an argument to a function, the location
of the beginning of the array"s passed;
良い時代になったもんだ 歴史的資料がきちんと公開されている
ガイジには読み取れなかったようだ
> When an array name appears as an argument to a function, the location
of the beginning of the array"s passed;
良い時代になったもんだ 歴史的資料がきちんと公開されている
666デフォルトの名無しさん
2017/08/06(日) 21:33:36.77ID:r2XWWSNC 誤読される可能性があるので追記
>>659
ガイジのID:ThMEkv3Iには読み取れなかったようだ
> When an array name appears as an argument to a function, the location
of the beginning of the array"s passed;
良い時代になったもんだ 歴史的資料がきちんと公開されている
>>659
ガイジのID:ThMEkv3Iには読み取れなかったようだ
> When an array name appears as an argument to a function, the location
of the beginning of the array"s passed;
良い時代になったもんだ 歴史的資料がきちんと公開されている
667デフォルトの名無しさん
2017/08/06(日) 21:39:44.09ID:r2XWWSNC668デフォルトの名無しさん
2017/08/06(日) 22:38:49.98ID:fAxfwMN0 When an array name appears as an argument to a function, the location
of the beginning of the array"s passed;
「配列の名前が関数の実引数として現れた時、その配列の先頭ポインタが渡される」でいい?
of the beginning of the array"s passed;
「配列の名前が関数の実引数として現れた時、その配列の先頭ポインタが渡される」でいい?
669デフォルトの名無しさん
2017/08/06(日) 22:53:31.79ID:r2XWWSNC どこにポインタなんて書いてあるんだ 見えないものが見えちゃうって精神科受診した方が良いぞ
670デフォルトの名無しさん
2017/08/06(日) 22:57:19.94ID:fAxfwMN0 じゃあ君ならlocationはどう訳す?
671デフォルトの名無しさん
2017/08/06(日) 23:15:47.82ID:jhhg/GBw ポインタ渡しが謎用語らしい
コイツはもう覚える気すらないよ
つーかただのバカ
スルー推薦
コイツはもう覚える気すらないよ
つーかただのバカ
スルー推薦
672デフォルトの名無しさん
2017/08/06(日) 23:17:56.61ID:r2XWWSNC 位置
そもそも
> A pointer is a variable that contains the address of another variable.
と言う定義を理解してないのか?
障害児製造機な入門書が存在らしいな
お前は何という本を初学時に使った?
そもそも
> A pointer is a variable that contains the address of another variable.
と言う定義を理解してないのか?
障害児製造機な入門書が存在らしいな
お前は何という本を初学時に使った?
673デフォルトの名無しさん
2017/08/06(日) 23:20:53.44ID:UjkuucW3 一応言っとくけど、文字列リテラルを関数に渡す場合の説明は5.5章だぞ
674デフォルトの名無しさん
2017/08/06(日) 23:22:53.35ID:r2XWWSNC >>671
ガイジ用語か qiitaでいっぱいヒットするわ w
ガイジ用語か qiitaでいっぱいヒットするわ w
675デフォルトの名無しさん
2017/08/06(日) 23:25:55.10ID:fAxfwMN0 >>672
直訳すると、「ポインタとは他の変数の位置を内包した変数である」。
"location of the beginning of the array"、直訳すると「配列の先頭の位置」はポインタ以外の何物だっていうのか教えてくれる?
ちなみに俺の初学本は「C言語によるプログラミング」第二版
直訳すると、「ポインタとは他の変数の位置を内包した変数である」。
"location of the beginning of the array"、直訳すると「配列の先頭の位置」はポインタ以外の何物だっていうのか教えてくれる?
ちなみに俺の初学本は「C言語によるプログラミング」第二版
676デフォルトの名無しさん
2017/08/06(日) 23:25:56.83ID:AvyyeWcb 他人をガイジ呼ばわりしてるけど自分が1番ガイジだったってオチやね
677デフォルトの名無しさん
2017/08/06(日) 23:38:53.59ID:fp1GLRR7 メモリ上の位置を表す「アドレス」と、それを格納する変数である「ポインタ」を混同してるから議論が噛み合わないのでは?
678デフォルトの名無しさん
2017/08/06(日) 23:45:57.68ID:r2XWWSNC >>675
ガイジか?
ポインタとは他の変数のアドレスを内包した変数である
としか書いてないのに、書かれてない「位置」がなぜ出てくる
まあ、それには目をつぶって
「内包した変数」が重要
Cの変数とは型を持ち、値を格納できるもの
アドレスとポインタ(=変数)を混同しないように
あと10年くらい修行することだ
ガイジか?
ポインタとは他の変数のアドレスを内包した変数である
としか書いてないのに、書かれてない「位置」がなぜ出てくる
まあ、それには目をつぶって
「内包した変数」が重要
Cの変数とは型を持ち、値を格納できるもの
アドレスとポインタ(=変数)を混同しないように
あと10年くらい修行することだ
679デフォルトの名無しさん
2017/08/06(日) 23:45:58.32ID:fAxfwMN0 いうほど混同しているだろうか?
680デフォルトの名無しさん
2017/08/06(日) 23:54:22.39ID:fAxfwMN0681デフォルトの名無しさん
2017/08/06(日) 23:55:35.62ID:jhhg/GBw コイツはまともな社会生活できてるのか
日常会話が成立出来ていないのではないか
日常会話が成立出来ていないのではないか
682デフォルトの名無しさん
2017/08/07(月) 00:00:10.79ID:Uo4tfgNR683デフォルトの名無しさん
2017/08/07(月) 00:02:00.78ID:bwSM+rxU 論点を三行でまとめて
684デフォルトの名無しさん
2017/08/07(月) 00:07:08.67ID:r7C/NYo5 >>682
いわゆるって言ったのにそれでもダメか。
void foo(int a[8])と宣言された関数を別の関数内で
int a[8];
void foo(a)
と呼び出す時、それはポインタが渡されているのではなく配列の先頭アドレスがコピーされていると言いたいの?
いわゆるって言ったのにそれでもダメか。
void foo(int a[8])と宣言された関数を別の関数内で
int a[8];
void foo(a)
と呼び出す時、それはポインタが渡されているのではなく配列の先頭アドレスがコピーされていると言いたいの?
685デフォルトの名無しさん
2017/08/07(月) 00:09:51.87ID:uOfJK7yi 「ポインタ」って用語は結構仕様書中でも不安定だから、実はあまり気にしてもしょうがなかったりするんだよね
http://www.kijineko.co.jp/node/498
http://www.kijineko.co.jp/node/498
686デフォルトの名無しさん
2017/08/07(月) 00:11:41.88ID:g8RW1Chx >>684
foo(a) の 「a」って何?
foo(a) の 「a」って何?
687デフォルトの名無しさん
2017/08/07(月) 00:13:35.75ID:r7C/NYo5 >>686
その上にint a[8];って書いたんだけど、なんか文法ミスってたかいな?
その上にint a[8];って書いたんだけど、なんか文法ミスってたかいな?
688デフォルトの名無しさん
2017/08/07(月) 00:13:38.80ID:5EiEWIq+ このガイジ早く死刑にしろ
絶対何か障害持ってるだろ
何か起こしてからじゃ遅いぞ
絶対何か障害持ってるだろ
何か起こしてからじゃ遅いぞ
689デフォルトの名無しさん
2017/08/07(月) 00:16:29.93ID:DdwwpY1/ なるほど。やたらガイジ連呼してる奴が頭おかしいわけだな。
690デフォルトの名無しさん
2017/08/07(月) 00:21:20.30ID:Uo4tfgNR >>684
渡されるのはポインタ変数の値(アドレス)、それをfooがポインタ変数として受け取る
渡されるのはポインタ変数の値(アドレス)、それをfooがポインタ変数として受け取る
691デフォルトの名無しさん
2017/08/07(月) 00:24:46.95ID:DdwwpY1/ ポインタの使い道を聞いてるのに、なにみんなで必死にポインタの解説してんだ?
Javaとかポインタない言語があるんだからポインタはなくてもいいだろという主旨だろう。
Javaとかポインタない言語があるんだからポインタはなくてもいいだろという主旨だろう。
692デフォルトの名無しさん
2017/08/07(月) 00:25:52.66ID:Uo4tfgNR ガイジ用語「ポインタ渡し」を編み出したID:jhhg/GBwは今日はID:5EiEWIq+か
693デフォルトの名無しさん
2017/08/07(月) 00:33:24.20ID:r7C/NYo5694デフォルトの名無しさん
2017/08/07(月) 00:38:54.27ID:YE/9ro9h 引数を変数だと考えるからおかしなことになる
引数は値であって変数ではない、渡しているのは値であって変数ではない
C言語には値渡ししか存在しない、他の言語で言う参照渡しに相当するようなものは存在しない
ましてやポインタ渡しに至っては全く意味不明
渡しているのはアドレスであってポインタを渡しているのではない
引数は値であって変数ではない、渡しているのは値であって変数ではない
C言語には値渡ししか存在しない、他の言語で言う参照渡しに相当するようなものは存在しない
ましてやポインタ渡しに至っては全く意味不明
渡しているのはアドレスであってポインタを渡しているのではない
695デフォルトの名無しさん
2017/08/07(月) 00:43:09.37ID:CdxYgk48 ポインタ渡されww
696デフォルトの名無しさん
2017/08/07(月) 00:46:39.34ID:r7C/NYo5 じゃあ「アドレス渡し」ならいいわけ?
697デフォルトの名無しさん
2017/08/07(月) 00:48:53.93ID:tmW9+jq1 定義至上主義者とは一般的な会話が成り立たないことがよくわかる
698デフォルトの名無しさん
2017/08/07(月) 00:51:00.39ID:r7C/NYo5 定義至上主義なら最初から「アドレス渡しと呼べ」と言えばいいだけだから、ただ文句つけたかっただけだと思うよ
699デフォルトの名無しさん
2017/08/07(月) 01:02:22.98ID:L++MnVlz 定義至上主義者はID:r7C/NYo5のことだと思うが
「ポインタ渡し」だの「アドレス渡し」だの言葉の定義に拘ってるようにしか見えん
「ポインタ渡し」だの「アドレス渡し」だの言葉の定義に拘ってるようにしか見えん
700デフォルトの名無しさん
2017/08/07(月) 01:04:50.56ID:uOfJK7yi701デフォルトの名無しさん
2017/08/07(月) 01:06:41.28ID:Uo4tfgNR >>693
printfに対する知識がなければ、アドレスを渡しているところまでしかわからない
printfに対する知識がなければ、アドレスを渡しているところまでしかわからない
702デフォルトの名無しさん
2017/08/07(月) 01:08:08.23ID:tmW9+jq1 この流れでそう思える読解力は凄い
言葉の定義で頓珍漢な噛みつき方したのは
ID:Uo4tfgNRとID:YE/9ro9hだろ
言葉の定義で頓珍漢な噛みつき方したのは
ID:Uo4tfgNRとID:YE/9ro9hだろ
703デフォルトの名無しさん
2017/08/07(月) 01:10:17.31ID:r7C/NYo5 >>701
そんなことで人のことをガイジガイジ連呼していたの?
そんなことで人のことをガイジガイジ連呼していたの?
704片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 01:11:58.49ID:ITzYZ/9b 人工知能は人間らしい解釈ができないから仕方ない。
705デフォルトの名無しさん
2017/08/07(月) 01:14:42.90ID:tmW9+jq1 これチューリングテストの実験場だったのか
見抜けなかったわ〜w
見抜けなかったわ〜w
706デフォルトの名無しさん
2017/08/07(月) 01:15:35.04ID:DdwwpY1/ だからさぁ。使い道を聞かれてんだよ、使い方じゃねーんだよ。さっさと答えてやれよ。
javaやpascalはポインタ使わなくてもプログラム書けるのにCにポインタが必要になる使い方をよ。
もしかしておまえら入門書読んで理解したつもりなだけで、ポインタが何か分ってないんだろ?
javaやpascalはポインタ使わなくてもプログラム書けるのにCにポインタが必要になる使い方をよ。
もしかしておまえら入門書読んで理解したつもりなだけで、ポインタが何か分ってないんだろ?
707デフォルトの名無しさん
2017/08/07(月) 01:18:08.93ID:r7C/NYo5 >>706
俺はガイジ連呼厨の意図が知りたかっただけだし、そこまで偉そうに言うなら君が答えてあげなよ
俺はガイジ連呼厨の意図が知りたかっただけだし、そこまで偉そうに言うなら君が答えてあげなよ
708デフォルトの名無しさん
2017/08/07(月) 01:19:37.44ID:Uo4tfgNR >>703
お前をガイジと呼んだのは、書かれていない単語が見えてたからだと説明したはずだが
お前をガイジと呼んだのは、書かれていない単語が見えてたからだと説明したはずだが
709片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 01:21:33.94ID:ITzYZ/9b そこ、放送禁止用語も知らない一般人、オンエアしちゃダメ。
710デフォルトの名無しさん
2017/08/07(月) 01:26:39.77ID:r7C/NYo5 >>708
俺以外に対してだよ
俺以外に対してだよ
711デフォルトの名無しさん
2017/08/07(月) 01:35:13.99ID:DdwwpY1/ 結局、javaやpascalはポインタ使わなくてもプログラム書けるのに
Cにポインタが必要になる使い道、理由は誰も分らないのかよ。
ガッカリだぜ。なにがC言語なら俺に聞けだよ。
Cにポインタが必要になる使い道、理由は誰も分らないのかよ。
ガッカリだぜ。なにがC言語なら俺に聞けだよ。
712片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 01:35:26.77ID:ITzYZ/9b ┌────────┐
│ │
│ /■~\ │
│ (´∀`∩) │
│ (つ 丿 │
│ ( ヽノ │
│ し(_) │
│ │
│Now Onigiring...│
│ │
│ 暫くおにぎりで │
│ お待ちください │
└────────┘
│ │
│ /■~\ │
│ (´∀`∩) │
│ (つ 丿 │
│ ( ヽノ │
│ し(_) │
│ │
│Now Onigiring...│
│ │
│ 暫くおにぎりで │
│ お待ちください │
└────────┘
713片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 01:38:45.36ID:ITzYZ/9b714デフォルトの名無しさん
2017/08/07(月) 01:41:43.94ID:Uo4tfgNR >>703
> printf("Hello, C world!\n"); これがポインタだっ どやっ
十分にガイジ
「ポインタ渡し」のガイジ事か?
> こいつらの反論が反論になっていないな
> C分かっていればそのコードが
> ポインタ渡しになっていることは直ぐに分かるんだけどね
printfの知識が無ければわからない
「渡され」を「渡し」と呼ぶ
十分にガイジ
> printf("Hello, C world!\n"); これがポインタだっ どやっ
十分にガイジ
「ポインタ渡し」のガイジ事か?
> こいつらの反論が反論になっていないな
> C分かっていればそのコードが
> ポインタ渡しになっていることは直ぐに分かるんだけどね
printfの知識が無ければわからない
「渡され」を「渡し」と呼ぶ
十分にガイジ
715片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 01:44:12.93ID:ITzYZ/9b 生で全国放送なんで、影響力強いっす。学校でイジメの真似事されると困ります。ですから、放送コードに違反した発言は極力慎むように頼みます。
716デフォルトの名無しさん
2017/08/07(月) 01:48:52.14ID:r7C/NYo5 >>714
最初のは確かに渡されだけどポインタじゃない?一応間違ってはないんじゃない? 最初にそのレスした時相手のprintfの知識とか考えてなかっただろうし。
それに「ポインタ渡し」は慣用語として定着してしまっている側面もあるからその用語を使っただけでガイジ認定は早いよ
ある程度の慣用語は意図を汲んだ上で、間違ってると思うなら的確に指摘しないとコミュニケーション成立しなくてどっちがガイジかわからなくなっちゃう
最初のは確かに渡されだけどポインタじゃない?一応間違ってはないんじゃない? 最初にそのレスした時相手のprintfの知識とか考えてなかっただろうし。
それに「ポインタ渡し」は慣用語として定着してしまっている側面もあるからその用語を使っただけでガイジ認定は早いよ
ある程度の慣用語は意図を汲んだ上で、間違ってると思うなら的確に指摘しないとコミュニケーション成立しなくてどっちがガイジかわからなくなっちゃう
717デフォルトの名無しさん
2017/08/07(月) 01:50:24.62ID:Amcgn4Bl >>711
ポインタという仕組みを1つ導入することでアドレスを直接操作することができるからかな
参照だとアドレスを操作できない
他の言語はアドレスを逆に操作させないことで安全性を保つというスタンスだけど
C/C++は安全でない代わりにアドレスを直接操作する事ができるというスタンス
あとはメモリ操作のコスト削減があげられると思う
for(i = 0; i < MAX; i++){
dest[i] = src[i];
}
とやるよりも
src_p = src;
dest_p = dest;
dest_end_p = dest + MAX;
while (dest_p < dest_end_p) {
*dest_p++ = src_p++;
}
とやるほうがコストが軽い
ポインタという仕組みを1つ導入することでアドレスを直接操作することができるからかな
参照だとアドレスを操作できない
他の言語はアドレスを逆に操作させないことで安全性を保つというスタンスだけど
C/C++は安全でない代わりにアドレスを直接操作する事ができるというスタンス
あとはメモリ操作のコスト削減があげられると思う
for(i = 0; i < MAX; i++){
dest[i] = src[i];
}
とやるよりも
src_p = src;
dest_p = dest;
dest_end_p = dest + MAX;
while (dest_p < dest_end_p) {
*dest_p++ = src_p++;
}
とやるほうがコストが軽い
718片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 01:50:56.10ID:ITzYZ/9b 動物園の檻の中で「あいつはオラウータン」「こいつはゴリラ」とかぼやいてる飼育員。
719デフォルトの名無しさん
2017/08/07(月) 01:55:31.83ID:Amcgn4Bl 脱字訂正
誤:*dest_p++ = src_p++;
正:*dest_p++ = *src_p++;
誤:*dest_p++ = src_p++;
正:*dest_p++ = *src_p++;
720デフォルトの名無しさん
2017/08/07(月) 02:04:29.54ID:Uo4tfgNR >>716
やっぱり見えないものを見てるガイジか?
> printf("Hello, C world!\n");
これのどこに
> A pointer is a variable that contains the address of another variable.
が現れているんだ?
確実に配列とポインタの区別がついてないガイジだろ
やっぱり見えないものを見てるガイジか?
> printf("Hello, C world!\n");
これのどこに
> A pointer is a variable that contains the address of another variable.
が現れているんだ?
確実に配列とポインタの区別がついてないガイジだろ
721デフォルトの名無しさん
2017/08/07(月) 02:11:29.62ID:r7C/NYo5722片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 02:12:45.69ID:ITzYZ/9b 引数は変数の一種と見なすのも一理あるだろう。仮引数も変数と見なしても実用上は問題ない。
それとも仮引数は変数ではないと言い張りたいのか?
それとも仮引数は変数ではないと言い張りたいのか?
723片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 02:16:49.89ID:ITzYZ/9b 我々は実用性を重視するが、理論上では仮引数はポインターではないかもしれない。君のような理論家ではそれは重要かもしれないが。
724デフォルトの名無しさん
2017/08/07(月) 02:19:54.41ID:Uo4tfgNR725デフォルトの名無しさん
2017/08/07(月) 02:30:03.96ID:r7C/NYo5 >>724
とりあえず、もしfortranから呼んでるならなら_printfじゃない?
さっきから言われた側の知識に言及していらっしゃるけど、それこそ一般に言うとprintfって言ったら普通はstdio.hのものを指すし、言われた側もまさかfortranとは思わないよ
そんな病的な状況を例に出さないといけない時点でおかしい噛みつき方してるってわかるもんだと思うけどなあ
とりあえず、もしfortranから呼んでるならなら_printfじゃない?
さっきから言われた側の知識に言及していらっしゃるけど、それこそ一般に言うとprintfって言ったら普通はstdio.hのものを指すし、言われた側もまさかfortranとは思わないよ
そんな病的な状況を例に出さないといけない時点でおかしい噛みつき方してるってわかるもんだと思うけどなあ
727片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 02:36:12.54ID:ITzYZ/9b printfの仮引数がポインター型だから、printf内部とprintfの型情報でポインターを使っているといっても間違いではない。
728片山博文MZ ◆T6xkBnTXz7B0
2017/08/07(月) 02:41:35.68ID:ITzYZ/9b 頭でっかちの理論家が、間違いを含む古い書籍を読んで、一字一句正しいと思い込んでいるのは最悪な状況だ。
729デフォルトの名無しさん
2017/08/07(月) 02:46:48.50ID:Uo4tfgNR >>722
「この一文」と限定したんだから、それ以外の知識は不要で、これだけでポインタを使ってるという事だな
「この一文」と限定したんだから、それ以外の知識は不要で、これだけでポインタを使ってるという事だな
730デフォルトの名無しさん
2017/08/07(月) 02:48:03.30ID:Uo4tfgNR■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★7 [蚤の市★]
- 最新版Z級クソ映画ランキングが決定! [牛丼★]
- 【STARTO ENTERTAINMENT】SUPER EIGHTの横山裕、フジ『ドッキリGP』ロケで全治2ヶ月の重傷 [Ailuropoda melanoleuca★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★2 [蚤の市★]
- 公用車カーナビのNHK受信料「全額免除を」 千葉市議会、国に制度創設求める意見書可決 [少考さん★]
- 【食】「シャウエッセンは焼くべからず」暗黙のルールを破り売上高過去最高…日本ハム社員たちが「夜味」にかけた情熱 [ぐれ★]
- なんか歯磨きしたのに口から歯の味がする
- 俺と一緒に寝ろ
- 【朗報】南鳥島のレアアース、中国産の「20倍の純度」青山繁晴氏「日本は資源大国」日本復活のファンファーレが鳴り響く! [673057929]
- 👊😅👊三☁😶‍🌫三⛅🏡
- コーヒー、来年3月から30パーセント値上げへ [709039863]
- 日本って中国と戦争したら絶対負けるのに何でイキってんの?
