- 1 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 23:32:27.83 ID:yWVViPyIM.net]
- !extend:checked:vvvvv:1000:512
(新スレ立ての際上記コマンドを2行書き込んでください) C言語の話題のみ取り扱います C++の話題はC++スレへ 質問には最低限の情報(ソース/コンパイラ/OS)を付ける 数行で収まらないソースは以下を適当に使ってURLを晒す https://paiza.io/ https://ideone.com/ codepad.org/ C17 www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4713.pdf C11 www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf C2x ドラフト www.open-std.org/jtc1/sc22/wg14/www/docs/n2731.pdf C99 www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf kikakurui.com/x3/X3010-2003-01.html C FAQ 日本語訳 www.kouno.jp/home/c_faq/ JPCERT C コーディングスタンダード https://www.jpcert.or.jp/sc-rules/ ※前スレ C言語なら俺に聞け 158 https://mevius.5ch.net/test/read.cgi/tech/1640401906/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
- 652 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 22:06:49.25 ID:SiOwIn850.net]
- カウント変数にcuntは止めろとねんを押された
- 653 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 22:28:20.65 ID:NFETJM8p0.net]
- コーディング規約があるなら守りましょう
- 654 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 22:29:14.08 ID:NFETJM8p0.net]
- 一瞬idがNEETかと思ったが違ったw
- 655 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 22:48:13.58 ID:SiOwIn850.net]
- ソースではなく、make終了時にBIGCOCKと表示させてた奴を知ってる
本人いたら、ゴメンナサイ、バラしました
- 656 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 21:25:54.17 ID:CZbur0iYd.net]
- そう、こういうの
全然どうでもいい事をさも重要な秘密のようにw
- 657 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 07:10:33.74 ID:9/1OGIJE0.net]
- 独り言です
インデントは4を使ってきたのだがプロの世界?では2みたいだな 軽くショックを受けた
- 658 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 07:12:57.69 ID:9/1OGIJE0.net]
- ちなみにインデント2を使ってるのはcatコマンドのソースです
https://sources.debian.org/src/coreutils/9.1-1/src/cat.c/
- 659 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 07:27:37.61 ID:i1fpLCEI0.net]
- プロの現場にそういうところもあるというだけだよ
1つ目撃したからってそれが全てだと思うのは 早まった一般化という誤謬だ 誤謬を多発するやつは論理思考が苦手ってことだ むろんプログラマとしての適性ではマイナス要素だ
- 660 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 07:32:06.64 ID:A1wSH6ms0.net]
- 昔は画面が狭かったからそういう主義のやつも割といた
そろそろ淘汰されてる頃じゃね
- 661 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 07:39:15.76 ID:i1fpLCEI0.net]
- 一画面ルールってのもあったな
- 662 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 08:27:39.75 ID:HgiMaBnhM.net]
- 今でもそこそこ使われてるだろ
一画面とは言わないまでも100行ルールとかの発展型も多い ひとつの関数が何千行もあればコードレビューで問題にされる
- 663 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 08:40:19.94 ID:i1fpLCEI0.net]
- ダラダラ書くなって話が廃れたとは言ってないんだが
- 664 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 09:25:59.68 ID:+gGQ3BRS0.net]
- GNUスタイルのインデントはゴミ
- 665 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 09:26:11.73 ID:KYgyTmU4M.net]
- 名前空間やクラスを使わないC言語は特に文が長くなりがちだから、2のほうが使い勝手がいいと思うことはよくある
- 666 名前:デフォルトの名無しさん (ワッチョイ 1363-HLP5) mailto:sage [2022/10/30(日) 10:52:42.74 ID:vrlOFY0H0.net]
- >>647のcatソース見たけれど、
私にはブロックが分かりにくいと感じた 見慣れれば良いのかも知れないが
- 667 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 17:05:35.10 ID:wnFbyiurd.net]
- >>647
rms仙人の直筆か プロ?と言って良いのかはさておきスーパーハッカーではあるね 関数呼び出しの()前の空白とかは結構独特なスタイルだと思うぞ
- 668 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 17:11:32.88 ID:c3va8FLBd.net]
- ✗直筆
✓監修 プロとは我らIT土方の事を指すのです
- 669 名前:おじ乳輪様 [2022/10/30(日) 17:12:30.77 .net]
- 中括弧の位置とか関数呼び出しのスペースとかなんでこんな独特なスタイルなの?
なんのメリットが?
- 670 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 17:24:51.13 ID:xXAnW4UR0.net]
- もともとは egrep とかで使いやすい
とかいう理由だった気がする
- 671 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 17:30:55.10 ID:1Zssd/uh0.net]
- web.sfc.wide.ad.jp/~sagawa/gnujdoc/standards-19981118/standards-ja_5.html
- 672 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 17:33:33.15 ID:ZM6oqeKp0.net]
- GNUのソースは読もうと思って読んだがあのスタイルに拒否反応が出て駄目だったわ
- 673 名前:デフォルトの名無しさん [2022/10/30(日) 23:05:10.18 ID:KHak5nKt0.net]
- ( ´_ゝ`)フーン
- 674 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 23:45:46.77 ID:QW7VZG88M.net]
- インデントごときで読む気が無くなるのは、単に向いてないだけだなw
- 675 名前:デフォルトの名無しさん mailto:sage [2022/10/30(日) 23:52:22.08 ID:vrlOFY0H0.net]
- うん、むいてないからお前がやってくれ
- 676 名前:デフォルトの名無しさん [2022/10/31(月) 00:03:46.32 ID:EzTz1A6M0.net]
- (
´_ゝ` ) フーン
- 677 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 00:23:37.56 ID:8d/Em0+h0.net]
- スタイルがあるなら従うべきだけど、300-500行目に連発する
} else { はさすがに目が滑る スクロールして追うのも辛い
- 678 名前:デフォルトの名無しさん [2022/10/31(月) 00:32:37.86 ID:MKojko7I0.net]
- ブロックの前にインデントを入れてるのはブロックも文なんだから単一文の時と同じようにインデントを入れるべきという理屈かな?
- 679 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 01:42:04.37 ID:8d/Em0+h0.net]
- >>667
それ自体は一貫してるからいい、ただしこの場合は対応するifから平気で50行以上も離れているので、elseだけじゃスクロールバックしないと条件が何か分からん エディタのfold機能を活用するのもアリだけど、プレーンテキストとして読めるべきという姿勢のようだから、まさに>>660にある #ifdef foo ...(長いコード) #else /* not foo */ のようにelseにコメントを添えさえすれば、俺的にはオッケー 余談だけど 個人的にはプリプロセッサの条件も自由にインデントしてる # ifdef foo ... # ifdef bar .... のように 殆ど見かけないから決して他人には勧めはしないけど
- 680 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 01:43:55.98 ID:oYB2uzRMM.net]
- GNUのインデントは、Pythonを考慮すると利にかなってんだよな
if foo: bar if (foo) { bar; } という対応がある Pythonはインデント自体にブロック要素があるから余計なカッコが要らないけど、Cはブロック要素にカッコが必要だから書いてあると考えれば、実はPythonと一緒なんだよ これに気付いた時はrmsは天才なんだと思い知らされた
- 681 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 02:16:22.63 ID:8d/Em0+h0.net]
- >>669
結果的に同じ形に落ち着いてるけど、pythonとは正反対の思想から生じている事もお忘れなきよう 尊師の第一言語はcでなく言語に構文要素自体が存在しないlispだから、改行のみからコードブロックとインデントレベルがフォーマッタを問わず一意に定められる c系統(いわゆるブレース言語)は言語に構文を採用しつつ、フリーフォーム記述の許す折衷だから、フォーマッタとスタイルにバリエーションが生じる
- 682 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 02:24:22.85 ID:8d/Em0+h0.net]
- 翻って、エディタ入力支援/フォーマッタプログラム無しにlispを記述するのは事実上不可能に近いので賛美してるわけではないよ
念の為
- 683 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 11:19:45.88 ID:0hSBCDEtd.net]
- ))))))))くらいは序の口だし、括弧を数えてたら気が狂うわな
ネストレベルに応じて機械的に挿入されるインデントのみによって構造を把握するから、Lispは実質的にPython並にインデント強制
- 684 名前:はちみつ餃子 mailto:sage [2022/10/31(月) 11:43:48.99 ID:HpV/6ZOj0.net]
- 今となっては C だってエディタの支援なしに書く気にはならんけどな。
- 685 名前:デフォルトの名無しさん [2022/10/31(月) 13:07:16.76 ID:J5/naAYk0.net]
- >>673
それは慣れの問題
- 686 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 15:59:12.44 ID:YDjtl0u50.net]
- そう言うのには慣れたくない
- 687 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 16:35:29.26 ID:gpqFhr3z0.net]
- LISP は先にあるんだし、Python の文法は諸々の言語の影響結果だろ
ブロックの開閉で改行するってのは、ALGOL系のBEGIN~ENDの強い影響を感じる Cではむしろ、少し自由な書式書法になっていたのが退化した
- 688 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 16:49:19.46 ID:YDjtl0u50.net]
- Cが退化したのではなく、人間が退化したんだろう
- 689 名前:デフォルトの名無しさん [2022/10/31(月) 20:11:09.56 ID:a6AXXlaBa.net]
- 括弧の入れ子がひどいコードを作ることがやばい
- 690 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 21:12:31.27 ID:YDjtl0u50.net]
- 初心者のために、本来不要だけど括弧を付けるときはあった
- 691 名前:デフォルトの名無しさん [2022/10/31(月) 21:55:34.36 ID:MKojko7I0.net]
- ウザ
- 692 名前:デフォルトの名無しさん mailto:sage [2022/10/31(月) 22:06:42.50 ID:gNe27yrb0.net]
- >>679
俺は未来の自分のために言語仕様としては不要な括弧を付ける
- 693 名前:デフォルトの名無しさん mailto:sage [2022/11/01(火) 07:24:39.67 ID:8mAHYLmxd.net]
- 初心者でも務まる仕事か
- 694 名前:デフォルトの名無しさん mailto:sage [2022/11/01(火) 15:13:43.68 ID:hGXBrabD0.net]
- 若手に優しい配慮は必要だと思う
いらないと言うことに気がつけば それはそいつの進歩だ
- 695 名前:デフォルトの名無しさん mailto:sage [2022/11/01(火) 18:32:43.22 ID:8mAHYLmxd.net]
- 甘やかしでしかない
- 696 名前:デフォルトの名無しさん mailto:sage [2022/11/01(火) 18:40:22.15 ID:hGXBrabD0.net]
- たった1人で好きなシステム組んでみて
- 697 名前:デフォルトの名無しさん mailto:sage [2022/11/01(火) 18:45:14.28 ID:8mAHYLmxd.net]
- 議論になってない
- 698 名前:デフォルトの名無しさん mailto:sage [2022/11/01(火) 20:23:05.05 ID:Lnx9eR9fM.net]
- 議論なんかしてないだろう
- 699 名前:デフォルトの名無しさん mailto:sage [2022/11/01(火) 21:17:55.24 ID:hxzN6YDm0.net]
- ということにしたいのですね
- 700 名前:デフォルトの名無しさん mailto:sage [2022/11/01(火) 22:30:37.78 ID:hGXBrabD0.net]
- オッサンは呼んでない
- 701 名前:デフォルトの名無しさん [2022/11/02(水) 11:37:22.22 ID:1ThO0l2A0.net]
- はつみみです
- 702 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 21:00:24.72 ID:C3BaP9Oq0.net]
- 焼き鳥の通だけが知ってる稀少部位?
- 703 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 17:58:10.87 ID:BvZ6DXqw0.net]
- >>658
呼び出し前スペースはプリプロセスをm4で強化するときに少し面倒になるな GNUはm4大好きなのにな
- 704 名前:デフォルトの名無しさん mailto:sage [2022/11/20(日) 17:25:16.95 ID:u5cvtrdO0.net]
- m4すらすら書ける人います?
- 705 名前:デフォルトの名無しさん mailto:sage [2022/11/21(月) 03:19:48.32 ID:Amw5zf2Y0.net]
- 大昔、sendmail.cf を生成するのによく使われてな。久しぶりに名前を聞いた。
autoconf をがんがん使うプログラマがいればワンチャン。
- 706 名前:デフォルトの名無しさん [2022/11/23(水) 15:53:36.98 ID:U6TEG1mTa.net]
- sendmail.cf なつかしす
postfix に乗り換えちゃった
- 707 名前:デフォルトの名無しさん mailto:sage [2022/11/23(水) 19:55:29.66 ID:aRKGS4gV0.net]
- CF使った事あるw
- 708 名前:デフォルトの名無しさん mailto:sage [2022/11/25(金) 12:32:01.04 ID:FzNlCQf10.net]
- すまん、聞くことないわ
- 709 名前:デフォルトの名無しさん mailto:sage [2022/11/25(金) 12:49:25.94 ID:PV2ZG9bua.net]
- CF は m4 ではないやろ?
- 710 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 15:02:39.09 ID:ZPuEPm3M0.net]
- ttps://atcoder.jp/contests/abc273/submissions/35667282
このコードを実行するとscanfで入力を待つはずなのですが即座に終了してしまいます たまにそういうコードを見かけるのですが何が原因なのでしょうか printfを入れても実行されないのでmainがスキップしているような。。
- 711 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 15:40:10.03 ID:q8NQ5dwmd.net]
- あなたの環境のせいかと
- 712 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 16:09:51.97 ID:JXDLC/Oi0.net]
- コードが酷くてワロタw
- 713 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 16:26:50.49 ID:jAeBwf3w0.net]
- >>699
典型的な scanf() あるあるだな 最初の scanf() で数字 + 改行が読み込まれるが"¥d"だと数字だけ取り出して改行が残っちゃう 2回目以降のscanf()は改行が残っているから入力をスキップしてしまう scanf 改行 読み込み とかでぐぐると色々出てくる https://hiroyukichishiro.com/scanf-problems-in-c-language/ 回避方法はいくつかあるけど、個人的には static b[100]; fgets(b, sizeof b, stdin); N = atoi(b); ... fgets(b, sizeof b, stdin); d[i].key = atoi(b); みたいにするかな >>700 釣りか?
- 714 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 16:29:17.59 ID:LIu803lba.net]
- 普通のマージソートを読んでるだけで別に酷くなくね?
エラーハンドリングしてないってことなら競プロではそれが常識だぞ 何を見て酷いと言ってるのか説明してくれ
- 715 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 16:33:06.65 ID:LIu803lba.net]
- >>702
\dじゃなく%dのことかな? そのコードの下にACが30個並んでるだろ? これは用意された30通りのテストケースにおいて想定通りに動いたということなんだよね つまりコードのせいではないよ
- 716 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 16:36:36.47 ID:q8NQ5dwmd.net]
- 改行が問題になるのは%cのときくらいで
%dのあと%dだから空白類文字は問題ないよ
- 717 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 16:42:55.52 ID:LIu803lba.net]
- >>701
ちなみにこのコードを書いたのはオレンジコーダー https://atcoder.jp/users/ygussany?contestType=algo オレンジというのは一部上場企業でも一人もいないことが珍しくないレベルの高レベルプログラマを超える化け物レベルの超高レベルプログラマを超える頭おかしいレベルのプログラマ
- 718 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 16:47:51.25 ID:knNtAgEU0.net]
- y[200001];とd[200001]がスタック壊してしまいます涙
- 719 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 16:54:14.03 ID:LIu803lba.net]
- >>707
Linuxではメモリの許す限りスタックが使えるから
- 720 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 16:54:27.16 ID:ZPuEPm3M0.net]
- >>707
ありがとうございます それでした
- 721 名前:デフォルトの名無しさん mailto:sage [2022/12/01(木) 17:04:51.34 ID:IEkrCGic0.net]
- おま環定期
- 722 名前:デフォルトの名無しさん mailto:sage [2022/12/04(日) 21:55:28.56 ID:7byHd/K/d.net]
- >>708
とはいえmallocにしたほうがいいんでない?
- 723 名前:デフォルトの名無しさん mailto:sage [2022/12/04(日) 22:07:50.79 ID:RAGda7mP0.net]
- VLAで足りることにmallocか
- 724 名前:デフォルトの名無しさん (US 0H31-fHn/) mailto:sage [2022/12/04(日) 22:16:11.60 ID:Yt2fANdLH.net]
- >>712
C++ で見捨てられた VLA なんか使いたくないですね
- 725 名前:デフォルトの名無しさん mailto:sage [2022/12/04(日) 22:29:52.59 ID:xXGWnQN3d.net]
- >>712
VLAはC99で採用されたけどC11でオプション仕様に格下げされたよ
- 726 名前:デフォルトの名無しさん mailto:sage [2022/12/04(日) 22:31:57.30 ID:JQ3spjvfM.net]
- >>708
それってどこ情報なん?
- 727 名前:デフォルトの名無しさん [2022/12/04(日) 23:03:10.81 ID:UdvGlPZ+0.net]
- Cで通信系いじりたいんやけどなにからすればええ?
まずはゲームとか作ってC言語に慣れた方がええんやろか 「無線 C言語」と調べてもコロナ社の本しか出てこん 本買った方がええんか? 右も左もわからん、どなたか教えてください!!!
- 728 名前:デフォルトの名無しさん mailto:sage [2022/12/04(日) 23:04:19.10 ID:AOlAqVGT0.net]
- まず何がやりたいのかはっきりさせろ
何もわからんぞ
- 729 名前:デフォルトの名無しさん mailto:sage [2022/12/04(日) 23:09:42.46 ID:HgjSOVEG0.net]
- 通信系って、無線通信?
C言語には電波を飛ばす機能はないよ
- 730 名前:デフォルトの名無しさん [2022/12/04(日) 23:14:41.99 ID:UdvGlPZ+0.net]
- ネット通信とか無線通信はC言語だとどっかで耳にしたからとりあえずやりたくなったんや
なんかいい通信系の入門サイトとかあれば教えてほしい
- 731 名前:デフォルトの名無しさん [2022/12/04(日) 23:17:10.93 ID:UdvGlPZ+0.net]
- >>718
無線通信系に興味ある 電波飛ばす機械をC言語でなんかするんじゃないん?
- 732 名前:デフォルトの名無しさん [2022/12/04(日) 23:26:26.75 ID:MiJYA0Kr0.net]
- 通信をする方法が無線かどうかはハードウェアの問題。
更にOSやデバイスドライバやOSのシステムコールをどのように呼べば良いかを知る必要がある。 C言語の知識が必要になるとすると通常はここからだ。 そうではなくてハードウェアはあるがOSがなくI/Oポートを直接読み書きするようなプログラムを 作る必要がある場合はアセンブラかC言語で作ることになると思う(必ずしもそうである必要は ないが)。その場合はOSのデバイスドライバを自作するような感じになる。
- 733 名前:デフォルトの名無しさん mailto:sage [2022/12/04(日) 23:27:41.55 ID:HgjSOVEG0.net]
- 有線にしろ無線にしろ、通信という以上は相手があって
その相手とルールの取り決めをしてからそのルールにしたがってやり取りする だから最初に、誰と、どういう取り決めでデータのやり取りをするかを決めないといけない インターネットもそういうルールをみんなで決めてやり取りをしている とりあえずインターネットの通信を学んでみたらどうだろう この掲示板に書き込みをしているのだから、その通信が可能だし、 その機種を使って試すところから始めると良い
- 734 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 00:30:23.98 ID:ddGzHpStd.net]
- >>712
スタックの仕様は機種依存が激しいから可搬性を考えたらスタックは無限にあると考えないほうがいい というかLinuxではデフォルト8MBみたいだけど
- 735 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 00:47:01.63 ID:ddGzHpStd.net]
- というかスタックというのは一番効率の悪いメモリの使い方なので
本を片っ端から積み上げて下の方は取れなくなってしまうイメージ 大規模な配列はスタックに置かないほうがいいというのは基本では 断片化があるとはいえmallocのほうが効率的
- 736 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 00:55:05.00 ID:d/jwcHzh0.net]
- 一番上と、一番下でアクセスの速度は同じでしょう
- 737 名前:デフォルトの名無しさん [2022/12/05(月) 01:09:57.27 ID:rpvKYALB0.net]
- スタックが上のデータに埋もれて下のデータが取り出しにくくなるなら、ヒープでも全く同じことが発生するはず。
適当なアナロジーで間違った理解をしている典型例だと思う。
- 738 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 01:14:21.69 ID:ZI2+JeHur.net]
- デカいデータで最適化が効くことがあるのはグローバル変数
- 739 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 01:15:32.38 ID:m5vf/Aut0.net]
- Cのローカル変数は、マシン語レベルではスタック領域に生成されるが
相対アドレシングで自由にアクセスするので問題ない
- 740 名前:デフォルトの名無しさん [2022/12/05(月) 01:21:11.87 ID:op7KwCv70.net]
- 領域の確保開放が上からしか出来ないだけで読み書きはどこでもできるもんな
- 741 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 06:17:33.64 ID:0xhTnbB50.net]
- >>723
え、無限にあると考えることがあるの? ・・・あれか、マイクソソフトが吹聴してる例の有害なやつか
- 742 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 08:28:01.18 ID:d0zhDPVSa.net]
- >>711
競プロだぞ
- 743 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 08:42:20.41 ID:AHxKL62Z0.net]
- 有限さん「おい、スタックが無限にあると考えられるとはどういうことだ?証明して見せろ!!」
ムゲンさん「わかりました。では無限なメモリを積んだコンピュータを用意してきてください。そしたら証明して見せます。」 有限さん「そんなことできるわけないだろ!」 ムゲンさん「ザンネン。じゃああなたのご希望に沿うことはできないですね。」 ボク「それってつまり、無限のスタックは存在しないってことなんじゃ?」 ムゲンさん「『無限なメモリを積んだコンピュータは存在しない』というのは悪魔の証明であって、存在しないと断言すること自体が不可能です。」 ボク「屏風の虎…一休さんかよ」
- 744 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 09:23:30.88 ID:0xhTnbB50.net]
- 観測可能な宇宙に原子が8e79個あり、
DDR4のセル電荷が2.4e-14クーロンとすると メモリは6.7e73バイトまでしか作れない ∴ 無限のメモリは存在しない
- 745 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 09:27:43.41 ID:AHxKL62Z0.net]
- 観測不可能な宇宙領域がまだあるではないか
そこには無限の(ry
- 746 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 09:44:59.30 ID:BaBCvHVhM.net]
- 量子メモリであれば無限の状態を記憶できるか?
- 747 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 10:56:43.18 ID:ddGzHpStd.net]
- >>725
速度の問題ではなく 用済みになっても開放できずにいつまでも抱え込んでいなければならないことが問題
- 748 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 11:14:13.11 ID:d/jwcHzh0.net]
- スタック上の変数って、その関数内でしか用は無いのだから
関数が終了と同時二メモリーから消え去ります 抱え込むことはありません
- 749 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 11:22:51.84 ID:hYIKK9DOp.net]
- 児童変数の事?
- 750 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 11:23:28.04 ID:E9Ntil7Ed.net]
- 効率悪い実装してれば効率悪くなるだけの話やな
スタックは一時変数の効率的確保の極みなんだけど関数化を怠った結果そうなる
- 751 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 11:24:48.36 ID:hYIKK9DOp.net]
- 児童変数を関数の戻り値にするのは実体渡しだけにしておかないと痛い目に逢ったなぁ
- 752 名前:デフォルトの名無しさん mailto:sage [2022/12/05(月) 11:28:42.22 ID:d/jwcHzh0.net]
- >用済みになっても
と言うことだから、関数間の受け渡しは考慮しなくて良いでしょう
|

|