!extend:checked:vvvvv:1000:512
(新スレ立ての際上記コマンドを2行書き込んでください)
C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/
C17
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4713.pdf
C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf
C2x ドラフト
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2731.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/
※前スレ
C言語なら俺に聞け 158
https://mevius.5ch.net/test/read.cgi/tech/1640401906/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C言語なら俺に聞け 159
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワンミングク MMa2-RRwJ)
2022/08/04(木) 23:32:27.83ID:yWVViPyIM680デフォルトの名無しさん (ワッチョイ d935-uirP)
2022/10/31(月) 21:55:34.36ID:MKojko7I0 ウザ
681デフォルトの名無しさん (ワッチョイ 1301-pRvw)
2022/10/31(月) 22:06:42.50ID:gNe27yrb0 >>679
俺は未来の自分のために言語仕様としては不要な括弧を付ける
俺は未来の自分のために言語仕様としては不要な括弧を付ける
682デフォルトの名無しさん (スップ Sd73-OvbD)
2022/11/01(火) 07:24:39.67ID:8mAHYLmxd 初心者でも務まる仕事か
683デフォルトの名無しさん (ワッチョイ 1363-HLP5)
2022/11/01(火) 15:13:43.68ID:hGXBrabD0 若手に優しい配慮は必要だと思う
いらないと言うことに気がつけば
それはそいつの進歩だ
いらないと言うことに気がつけば
それはそいつの進歩だ
684デフォルトの名無しさん (スップ Sd73-OvbD)
2022/11/01(火) 18:32:43.22ID:8mAHYLmxd 甘やかしでしかない
685デフォルトの名無しさん (ワッチョイ 1363-HLP5)
2022/11/01(火) 18:40:22.15ID:hGXBrabD0 たった1人で好きなシステム組んでみて
686デフォルトの名無しさん (スップ Sd73-OvbD)
2022/11/01(火) 18:45:14.28ID:8mAHYLmxd 議論になってない
687デフォルトの名無しさん (ワンミングク MMd3-pRvw)
2022/11/01(火) 20:23:05.05ID:Lnx9eR9fM 議論なんかしてないだろう
688デフォルトの名無しさん (ワッチョイ 79c2-iO6U)
2022/11/01(火) 21:17:55.24ID:hxzN6YDm0 ということにしたいのですね
689デフォルトの名無しさん (ワッチョイ 1363-HLP5)
2022/11/01(火) 22:30:37.78ID:hGXBrabD0 オッサンは呼んでない
690デフォルトの名無しさん (ワッチョイ 8bb0-QueQ)
2022/11/02(水) 11:37:22.22ID:1ThO0l2A0 はつみみです
691デフォルトの名無しさん (ワッチョイ 79c2-iO6U)
2022/11/02(水) 21:00:24.72ID:C3BaP9Oq0 焼き鳥の通だけが知ってる稀少部位?
692デフォルトの名無しさん (ワッチョイ 6202-2PQ5)
2022/11/07(月) 17:58:10.87ID:BvZ6DXqw0693デフォルトの名無しさん (ワッチョイ e263-TaOI)
2022/11/20(日) 17:25:16.95ID:u5cvtrdO0 m4すらすら書ける人います?
694デフォルトの名無しさん (ワッチョイ e7f2-44JW)
2022/11/21(月) 03:19:48.32ID:Amw5zf2Y0 大昔、sendmail.cf を生成するのによく使われてな。久しぶりに名前を聞いた。
autoconf をがんがん使うプログラマがいればワンチャン。
autoconf をがんがん使うプログラマがいればワンチャン。
695デフォルトの名無しさん (アウアウウー Sa3b-kfYZ)
2022/11/23(水) 15:53:36.98ID:U6TEG1mTa sendmail.cf なつかしす
postfix に乗り換えちゃった
postfix に乗り換えちゃった
696デフォルトの名無しさん (ワッチョイ c363-TaOI)
2022/11/23(水) 19:55:29.66ID:aRKGS4gV0 CF使った事あるw
697デフォルトの名無しさん (ワッチョイ cf5f-ES6F)
2022/11/25(金) 12:32:01.04ID:FzNlCQf10 すまん、聞くことないわ
698デフォルトの名無しさん (アウアウウー Sa3b-kfYZ)
2022/11/25(金) 12:49:25.94ID:PV2ZG9bua CF は m4 ではないやろ?
699デフォルトの名無しさん (ワッチョイ 972d-zuBb)
2022/12/01(木) 15:02:39.09ID:ZPuEPm3M0 ttps://atcoder.jp/contests/abc273/submissions/35667282
このコードを実行するとscanfで入力を待つはずなのですが即座に終了してしまいます
たまにそういうコードを見かけるのですが何が原因なのでしょうか
printfを入れても実行されないのでmainがスキップしているような。。
このコードを実行するとscanfで入力を待つはずなのですが即座に終了してしまいます
たまにそういうコードを見かけるのですが何が原因なのでしょうか
printfを入れても実行されないのでmainがスキップしているような。。
700デフォルトの名無しさん (スプッッ Sd8b-LL8a)
2022/12/01(木) 15:40:10.03ID:q8NQ5dwmd あなたの環境のせいかと
701デフォルトの名無しさん (ワッチョイ 9f7c-RPwI)
2022/12/01(木) 16:09:51.97ID:JXDLC/Oi0 コードが酷くてワロタw
702デフォルトの名無しさん (ワッチョイ 9f01-YdBL)
2022/12/01(木) 16:26:50.49ID:jAeBwf3w0 >>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
釣りか?
典型的な 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
釣りか?
703デフォルトの名無しさん (アウアウウー Sa5b-DgGg)
2022/12/01(木) 16:29:17.59ID:LIu803lba 普通のマージソートを読んでるだけで別に酷くなくね?
エラーハンドリングしてないってことなら競プロではそれが常識だぞ
何を見て酷いと言ってるのか説明してくれ
エラーハンドリングしてないってことなら競プロではそれが常識だぞ
何を見て酷いと言ってるのか説明してくれ
704デフォルトの名無しさん (アウアウウー Sa5b-DgGg)
2022/12/01(木) 16:33:06.65ID:LIu803lba705デフォルトの名無しさん (スプッッ Sd8b-LL8a)
2022/12/01(木) 16:36:36.47ID:q8NQ5dwmd 改行が問題になるのは%cのときくらいで
%dのあと%dだから空白類文字は問題ないよ
%dのあと%dだから空白類文字は問題ないよ
706デフォルトの名無しさん (アウアウウー Sa5b-DgGg)
2022/12/01(木) 16:42:55.52ID:LIu803lba >>701
ちなみにこのコードを書いたのはオレンジコーダー
https://atcoder.jp/users/ygussany?contestType=algo
オレンジというのは一部上場企業でも一人もいないことが珍しくないレベルの高レベルプログラマを超える化け物レベルの超高レベルプログラマを超える頭おかしいレベルのプログラマ
ちなみにこのコードを書いたのはオレンジコーダー
https://atcoder.jp/users/ygussany?contestType=algo
オレンジというのは一部上場企業でも一人もいないことが珍しくないレベルの高レベルプログラマを超える化け物レベルの超高レベルプログラマを超える頭おかしいレベルのプログラマ
707デフォルトの名無しさん (ワッチョイ ff63-RPwI)
2022/12/01(木) 16:47:51.25ID:knNtAgEU0 y[200001];とd[200001]がスタック壊してしまいます涙
708デフォルトの名無しさん (アウアウウー Sa5b-DgGg)
2022/12/01(木) 16:54:14.03ID:LIu803lba >>707
Linuxではメモリの許す限りスタックが使えるから
Linuxではメモリの許す限りスタックが使えるから
709デフォルトの名無しさん (ワッチョイ 972d-zuBb)
2022/12/01(木) 16:54:27.16ID:ZPuEPm3M0710デフォルトの名無しさん (ワッチョイ d75f-emCW)
2022/12/01(木) 17:04:51.34ID:IEkrCGic0 おま環定期
711デフォルトの名無しさん (スップ Sd9e-6RBv)
2022/12/04(日) 21:55:28.56ID:7byHd/K/d >>708
とはいえmallocにしたほうがいいんでない?
とはいえmallocにしたほうがいいんでない?
712デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/04(日) 22:07:50.79ID:RAGda7mP0 VLAで足りることにmallocか
713デフォルトの名無しさん (US 0H31-fHn/)
2022/12/04(日) 22:16:11.60ID:Yt2fANdLH >>712
C++ で見捨てられた VLA なんか使いたくないですね
C++ で見捨てられた VLA なんか使いたくないですね
714デフォルトの名無しさん (スッププ Sd02-94ar)
2022/12/04(日) 22:29:52.59ID:xXGWnQN3d >>712
VLAはC99で採用されたけどC11でオプション仕様に格下げされたよ
VLAはC99で採用されたけどC11でオプション仕様に格下げされたよ
715デフォルトの名無しさん (テテンテンテン MM34-kKzk)
2022/12/04(日) 22:31:57.30ID:JQ3spjvfM >>708
それってどこ情報なん?
それってどこ情報なん?
716デフォルトの名無しさん (ワッチョイ 3e04-g9pY)
2022/12/04(日) 23:03:10.81ID:UdvGlPZ+0 Cで通信系いじりたいんやけどなにからすればええ?
まずはゲームとか作ってC言語に慣れた方がええんやろか
「無線 C言語」と調べてもコロナ社の本しか出てこん
本買った方がええんか?
右も左もわからん、どなたか教えてください!!!
まずはゲームとか作ってC言語に慣れた方がええんやろか
「無線 C言語」と調べてもコロナ社の本しか出てこん
本買った方がええんか?
右も左もわからん、どなたか教えてください!!!
717デフォルトの名無しさん (ワッチョイ 0a46-1DcW)
2022/12/04(日) 23:04:19.10ID:AOlAqVGT0 まず何がやりたいのかはっきりさせろ
何もわからんぞ
何もわからんぞ
718デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/04(日) 23:09:42.46ID:HgjSOVEG0 通信系って、無線通信?
C言語には電波を飛ばす機能はないよ
C言語には電波を飛ばす機能はないよ
719デフォルトの名無しさん (ワッチョイ 3e04-g9pY)
2022/12/04(日) 23:14:41.99ID:UdvGlPZ+0 ネット通信とか無線通信はC言語だとどっかで耳にしたからとりあえずやりたくなったんや
なんかいい通信系の入門サイトとかあれば教えてほしい
なんかいい通信系の入門サイトとかあれば教えてほしい
720デフォルトの名無しさん (ワッチョイ 3e04-g9pY)
2022/12/04(日) 23:17:10.93ID:UdvGlPZ+0721デフォルトの名無しさん (ワッチョイ e2ad-4FAg)
2022/12/04(日) 23:26:26.75ID:MiJYA0Kr0 通信をする方法が無線かどうかはハードウェアの問題。
更にOSやデバイスドライバやOSのシステムコールをどのように呼べば良いかを知る必要がある。
C言語の知識が必要になるとすると通常はここからだ。
そうではなくてハードウェアはあるがOSがなくI/Oポートを直接読み書きするようなプログラムを
作る必要がある場合はアセンブラかC言語で作ることになると思う(必ずしもそうである必要は
ないが)。その場合はOSのデバイスドライバを自作するような感じになる。
更にOSやデバイスドライバやOSのシステムコールをどのように呼べば良いかを知る必要がある。
C言語の知識が必要になるとすると通常はここからだ。
そうではなくてハードウェアはあるがOSがなくI/Oポートを直接読み書きするようなプログラムを
作る必要がある場合はアセンブラかC言語で作ることになると思う(必ずしもそうである必要は
ないが)。その場合はOSのデバイスドライバを自作するような感じになる。
722デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/04(日) 23:27:41.55ID:HgjSOVEG0 有線にしろ無線にしろ、通信という以上は相手があって
その相手とルールの取り決めをしてからそのルールにしたがってやり取りする
だから最初に、誰と、どういう取り決めでデータのやり取りをするかを決めないといけない
インターネットもそういうルールをみんなで決めてやり取りをしている
とりあえずインターネットの通信を学んでみたらどうだろう
この掲示板に書き込みをしているのだから、その通信が可能だし、
その機種を使って試すところから始めると良い
その相手とルールの取り決めをしてからそのルールにしたがってやり取りする
だから最初に、誰と、どういう取り決めでデータのやり取りをするかを決めないといけない
インターネットもそういうルールをみんなで決めてやり取りをしている
とりあえずインターネットの通信を学んでみたらどうだろう
この掲示板に書き込みをしているのだから、その通信が可能だし、
その機種を使って試すところから始めると良い
723デフォルトの名無しさん (スップ Sd9e-6RBv)
2022/12/05(月) 00:30:23.98ID:ddGzHpStd724デフォルトの名無しさん (スップ Sd9e-6RBv)
2022/12/05(月) 00:47:01.63ID:ddGzHpStd というかスタックというのは一番効率の悪いメモリの使い方なので
本を片っ端から積み上げて下の方は取れなくなってしまうイメージ
大規模な配列はスタックに置かないほうがいいというのは基本では
断片化があるとはいえmallocのほうが効率的
本を片っ端から積み上げて下の方は取れなくなってしまうイメージ
大規模な配列はスタックに置かないほうがいいというのは基本では
断片化があるとはいえmallocのほうが効率的
725デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/05(月) 00:55:05.00ID:d/jwcHzh0 一番上と、一番下でアクセスの速度は同じでしょう
726デフォルトの名無しさん (ワッチョイ 4697-KDKu)
2022/12/05(月) 01:09:57.27ID:rpvKYALB0 スタックが上のデータに埋もれて下のデータが取り出しにくくなるなら、ヒープでも全く同じことが発生するはず。
適当なアナロジーで間違った理解をしている典型例だと思う。
適当なアナロジーで間違った理解をしている典型例だと思う。
727デフォルトの名無しさん (オッペケ Src1-94ar)
2022/12/05(月) 01:14:21.69ID:ZI2+JeHur デカいデータで最適化が効くことがあるのはグローバル変数
728デフォルトの名無しさん (ワッチョイ d8cf-R4o2)
2022/12/05(月) 01:15:32.38ID:m5vf/Aut0 Cのローカル変数は、マシン語レベルではスタック領域に生成されるが
相対アドレシングで自由にアクセスするので問題ない
相対アドレシングで自由にアクセスするので問題ない
729デフォルトの名無しさん (ワッチョイ 2135-1pGr)
2022/12/05(月) 01:21:11.87ID:op7KwCv70 領域の確保開放が上からしか出来ないだけで読み書きはどこでもできるもんな
730デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/05(月) 06:17:33.64ID:0xhTnbB50731デフォルトの名無しさん (アウアウウー Sab5-RHwc)
2022/12/05(月) 08:28:01.18ID:d0zhDPVSa >>711
競プロだぞ
競プロだぞ
732デフォルトの名無しさん (ワッチョイ eead-NN2n)
2022/12/05(月) 08:42:20.41ID:AHxKL62Z0 有限さん「おい、スタックが無限にあると考えられるとはどういうことだ?証明して見せろ!!」
ムゲンさん「わかりました。では無限なメモリを積んだコンピュータを用意してきてください。そしたら証明して見せます。」
有限さん「そんなことできるわけないだろ!」
ムゲンさん「ザンネン。じゃああなたのご希望に沿うことはできないですね。」
ボク「それってつまり、無限のスタックは存在しないってことなんじゃ?」
ムゲンさん「『無限なメモリを積んだコンピュータは存在しない』というのは悪魔の証明であって、存在しないと断言すること自体が不可能です。」
ボク「屏風の虎…一休さんかよ」
ムゲンさん「わかりました。では無限なメモリを積んだコンピュータを用意してきてください。そしたら証明して見せます。」
有限さん「そんなことできるわけないだろ!」
ムゲンさん「ザンネン。じゃああなたのご希望に沿うことはできないですね。」
ボク「それってつまり、無限のスタックは存在しないってことなんじゃ?」
ムゲンさん「『無限なメモリを積んだコンピュータは存在しない』というのは悪魔の証明であって、存在しないと断言すること自体が不可能です。」
ボク「屏風の虎…一休さんかよ」
733デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/05(月) 09:23:30.88ID:0xhTnbB50 観測可能な宇宙に原子が8e79個あり、
DDR4のセル電荷が2.4e-14クーロンとすると
メモリは6.7e73バイトまでしか作れない
∴ 無限のメモリは存在しない
DDR4のセル電荷が2.4e-14クーロンとすると
メモリは6.7e73バイトまでしか作れない
∴ 無限のメモリは存在しない
734デフォルトの名無しさん (ワッチョイ eead-NN2n)
2022/12/05(月) 09:27:43.41ID:AHxKL62Z0 観測不可能な宇宙領域がまだあるではないか
そこには無限の(ry
そこには無限の(ry
735デフォルトの名無しさん (ラクッペペ MM34-k0qw)
2022/12/05(月) 09:44:59.30ID:BaBCvHVhM 量子メモリであれば無限の状態を記憶できるか?
736デフォルトの名無しさん (スップ Sd9e-6RBv)
2022/12/05(月) 10:56:43.18ID:ddGzHpStd737デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/05(月) 11:14:13.11ID:d/jwcHzh0 スタック上の変数って、その関数内でしか用は無いのだから
関数が終了と同時二メモリーから消え去ります
抱え込むことはありません
関数が終了と同時二メモリーから消え去ります
抱え込むことはありません
738デフォルトの名無しさん (ササクッテロラ Sp10-cIXn)
2022/12/05(月) 11:22:51.84ID:hYIKK9DOp 児童変数の事?
739デフォルトの名無しさん (スッップ Sd70-YdaX)
2022/12/05(月) 11:23:28.04ID:E9Ntil7Ed 効率悪い実装してれば効率悪くなるだけの話やな
スタックは一時変数の効率的確保の極みなんだけど関数化を怠った結果そうなる
スタックは一時変数の効率的確保の極みなんだけど関数化を怠った結果そうなる
740デフォルトの名無しさん (ササクッテロラ Sp10-cIXn)
2022/12/05(月) 11:24:48.36ID:hYIKK9DOp 児童変数を関数の戻り値にするのは実体渡しだけにしておかないと痛い目に逢ったなぁ
741デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/05(月) 11:28:42.22ID:d/jwcHzh0 >用済みになっても
と言うことだから、関数間の受け渡しは考慮しなくて良いでしょう
と言うことだから、関数間の受け渡しは考慮しなくて良いでしょう
742デフォルトの名無しさん (ワッチョイ e2ad-4FAg)
2022/12/05(月) 18:42:27.81ID:M2dfOAYW0 自動変数用のスタックは本物のスタックポインタ無視して別に作っちゃってもできるな。
そういうコードを吐くコンパイラも作れるというだけのことではるが。
でもその方がリターンアドレスが詰まれている所に変数混ぜるより安全な感じはする。
特にC言語の場合は配列の範囲をオーバーしても平気でどんどん書き換えちゃって関数の終わりで明後日の方向にリターンなんてものも作れちゃうから。
そういうコードを吐くコンパイラも作れるというだけのことではるが。
でもその方がリターンアドレスが詰まれている所に変数混ぜるより安全な感じはする。
特にC言語の場合は配列の範囲をオーバーしても平気でどんどん書き換えちゃって関数の終わりで明後日の方向にリターンなんてものも作れちゃうから。
743デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/05(月) 18:46:56.29ID:d/jwcHzh0 ワープ航法w
744デフォルトの名無しさん (ササクッテロラ Sp10-cIXn)
2022/12/05(月) 19:26:38.80ID:3chMJcRmp 8ビット時代にゃスタックジャンプは普通にやってたなぁ
745デフォルトの名無しさん (ラクッペペ MM34-k0qw)
2022/12/05(月) 19:33:53.84ID:XYzlQpP/M746デフォルトの名無しさん (ワッチョイ aa01-QZbE)
2022/12/05(月) 20:04:47.35ID:9YGPhFSH0 >>742
> 自動変数用のスタックは本物のスタックポインタ無視して別に作っちゃってもできるな。
当たり前だろ、その本物とやらのスタックポインタもたないマシン(例えば汎用機)もあるんだし
> でもその方がリターンアドレスが詰まれている所に変数混ぜるより安全な感じはする。
暴走するか変なデータになるかの違いしかない
どっちがマシかは状況による
> 自動変数用のスタックは本物のスタックポインタ無視して別に作っちゃってもできるな。
当たり前だろ、その本物とやらのスタックポインタもたないマシン(例えば汎用機)もあるんだし
> でもその方がリターンアドレスが詰まれている所に変数混ぜるより安全な感じはする。
暴走するか変なデータになるかの違いしかない
どっちがマシかは状況による
747デフォルトの名無しさん (ワッチョイ eead-NN2n)
2022/12/05(月) 20:08:14.24ID:AHxKL62Z0 いや暴走のがマシなんて状況あるん?
変なデータは使用する時点でチェックすれば防げるけど
変なデータは使用する時点でチェックすれば防げるけど
748デフォルトの名無しさん (ワッチョイ aa01-QZbE)
2022/12/05(月) 21:05:25.92ID:9YGPhFSH0749デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/05(月) 22:17:34.11ID:d/jwcHzh0 補助輪つき自転車みたいだ
750デフォルトの名無しさん (スップ Sd9e-6RBv)
2022/12/06(火) 00:15:19.77ID:XVvWtcz/d >>737
抱えたまま他の関数を呼び出したり
あと再帰呼び出しとかスタックを利用する一番の利点とされてるけど?
問題なのは呼び出された関数がすでにスタックが残り少ないのを知る手段がなく
そこでクラッシュしても原因がわかりにくいという開発上のトラップだな
まあ大規模なソフト開発してみればわかるよ
抱えたまま他の関数を呼び出したり
あと再帰呼び出しとかスタックを利用する一番の利点とされてるけど?
問題なのは呼び出された関数がすでにスタックが残り少ないのを知る手段がなく
そこでクラッシュしても原因がわかりにくいという開発上のトラップだな
まあ大規模なソフト開発してみればわかるよ
751デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/06(火) 00:17:55.95ID:PYPomZFd0 それはメモリー不足が何時起きるか分からないと言ってるのと同じ事ですが
752デフォルトの名無しさん (ワッチョイ 0e02-R4o2)
2022/12/06(火) 00:44:18.64ID:8IYUkFNt0 スタックオーバーフローという
エラーメッセージがあるのでは?
エラーメッセージがあるのでは?
753デフォルトの名無しさん (ワッチョイ 0e02-R4o2)
2022/12/06(火) 00:44:54.36ID:8IYUkFNt0 スタックオーバーフローという
エラーメッセージがあるのでは?
エラーメッセージがあるのでは?
754デフォルトの名無しさん (ワッチョイ 2135-1pGr)
2022/12/06(火) 00:47:21.54ID:qZ0a8ZvK0 スタックオーバーフローという
エラーメッセージがあるのでは?
エラーメッセージがあるのでは?
755デフォルトの名無しさん (ワッチョイ 2135-1pGr)
2022/12/06(火) 00:47:27.32ID:qZ0a8ZvK0 スタックオーバーフローという
エラーメッセージがあるのでは?
エラーメッセージがあるのでは?
756デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/06(火) 00:48:27.88ID:PYPomZFd0 スタックオーバーフローは、大規模なソフト開発とはあまり関係ないデスね
大規模なソフト開発してて、スタックオーバーフローでプログラム落ちたら、
笑われると言うか、怒られるかも
大規模なソフト開発してて、スタックオーバーフローでプログラム落ちたら、
笑われると言うか、怒られるかも
757デフォルトの名無しさん (ワッチョイ 9610-8Kne)
2022/12/06(火) 01:09:59.63ID:LDJX4o340 スタック上に大領域確保するにしても
内部で余計な関数呼ばない結果だけ返す関数作って抱え込まない
深さを限定できない再帰呼び出しもありえないし
内部で余計な関数呼ばない結果だけ返す関数作って抱え込まない
深さを限定できない再帰呼び出しもありえないし
758デフォルトの名無しさん (ワッチョイ 9b5f-I/ml)
2022/12/06(火) 03:07:59.72ID:PbeCdWM30 699 デフォルトの名無しさん (ワッチョイ 972d-zuBb) sage 2022/12/01(木) 15:02:39.09 ID:ZPuEPm3M0
ttps://atcoder.jp/contests/abc273/submissions/35667282
このコードを実行するとscanfで入力を待つはずなのですが即座に終了してしまいます
たまにそういうコードを見かけるのですが何が原因なのでしょうか
printfを入れても実行されないのでmainがスキップしているような。。
ttps://atcoder.jp/contests/abc273/submissions/35667282
このコードを実行するとscanfで入力を待つはずなのですが即座に終了してしまいます
たまにそういうコードを見かけるのですが何が原因なのでしょうか
printfを入れても実行されないのでmainがスキップしているような。。
759デフォルトの名無しさん (ワッチョイ 9b5f-I/ml)
2022/12/06(火) 03:09:09.32ID:PbeCdWM30 >>758
いまだにhを取るあたりがもう超絶無能
いまだにhを取るあたりがもう超絶無能
760デフォルトの名無しさん (ワッチョイ 9b5f-I/ml)
2022/12/06(火) 03:10:27.42ID:PbeCdWM30 >>758
25年くらい前のネットの書き方だな
25年くらい前のネットの書き方だな
761デフォルトの名無しさん (ワッチョイ d910-RX5i)
2022/12/06(火) 08:24:16.80ID:zdZ3zkNx0 Win98時代は1Mバイト程度の配列変数作っただけで動作がおかしくなってたな。
スタック増やせって言われてコンパイルオプション弄ったけど改善しなかった記憶・・・。
DOSからWinに来たときは64kバイト以上のメモリ確保さえ避けてた。
スタック増やせって言われてコンパイルオプション弄ったけど改善しなかった記憶・・・。
DOSからWinに来たときは64kバイト以上のメモリ確保さえ避けてた。
762デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/06(火) 08:27:50.69ID:63yxghiR0 そりゃー8086のセグメント方式なんだから64k超えは問題ありまくりんぐでそ
763デフォルトの名無しさん (アウアウウー Sab5-QZbE)
2022/12/06(火) 11:20:14.67ID:yvaEv+2ca >>761
> Win98時代は1Mバイト程度の配列変数作っただけで動作がおかしくなってたな。
それは今でも一緒だろ
Windows の既定のスタックサイズは1MBのままだぞ
https://learn.microsoft.com/ja-jp/windows/win32/procthread/thread-stack-size
> Win98時代は1Mバイト程度の配列変数作っただけで動作がおかしくなってたな。
それは今でも一緒だろ
Windows の既定のスタックサイズは1MBのままだぞ
https://learn.microsoft.com/ja-jp/windows/win32/procthread/thread-stack-size
764デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/06(火) 11:30:06.24ID:PYPomZFd0 MS-DOSの頃は、メモリ1MB積んだPCってスゴイ豪華な印象だったな
搭載メモリーを使い切る様なプログラムを、オレは書けるんかって思ってた
搭載メモリーを使い切る様なプログラムを、オレは書けるんかって思ってた
765デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/06(火) 12:01:21.10ID:63yxghiR0 I/Oバンク方式かEMSかって時代か
766デフォルトの名無しさん (スッップ Sd70-AXrT)
2022/12/06(火) 14:59:37.11ID:iX2JPZR5d 本当のメインメモリとして使えたのは640kBまでで
残りの384kBはバンクかEMSの増設メモリだった
残りの384kBはバンクかEMSの増設メモリだった
767デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/06(火) 19:43:39.61ID:PYPomZFd0 最初はハードウェアで実装してたけれど
そのうち仮想86モードだったかで、
特別なハードを追加せずにメモリアクセス出来る様になってたね
そのうち仮想86モードだったかで、
特別なハードを追加せずにメモリアクセス出来る様になってたね
768デフォルトの名無しさん (ワッチョイ 463a-EnYx)
2022/12/06(火) 20:33:29.46ID:zjGx1PLy0769デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/06(火) 21:49:14.42ID:63yxghiR0 >>767
あったねー、ソフトウエアEMS>ハードウエアEMSなんて珍現象
あったねー、ソフトウエアEMS>ハードウエアEMSなんて珍現象
770デフォルトの名無しさん (ワッチョイ d9b3-SeIF)
2022/12/09(金) 05:45:28.61ID:QbuGAkRx0 #include <stdio.h>
#include <time.h>
void
main(void)
{
time_t now, now2;
now = time(NULL);
now2 = time(NULL);
struct tm *tm1 = localtime(&now);
struct tm *tm2 = localtime(&now2);
tm2->tm_mday = 1;
tm2->tm_mon = 1;
printf("%d %d\n", tm1->tm_mday, tm1->tm_mon);
printf("%d %d\n", tm2->tm_mday, tm2->tm_mon);
}
#include <time.h>
void
main(void)
{
time_t now, now2;
now = time(NULL);
now2 = time(NULL);
struct tm *tm1 = localtime(&now);
struct tm *tm2 = localtime(&now2);
tm2->tm_mday = 1;
tm2->tm_mon = 1;
printf("%d %d\n", tm1->tm_mday, tm1->tm_mon);
printf("%d %d\n", tm2->tm_mday, tm2->tm_mon);
}
771デフォルトの名無しさん (ワッチョイ d9b3-SeIF)
2022/12/09(金) 05:46:27.95ID:QbuGAkRx0 tm2を変更するとtm1も同じ値になってしまいます。
回避方法を教えて下さい。
回避方法を教えて下さい。
772デフォルトの名無しさん (ワッチョイ d9b3-SeIF)
2022/12/09(金) 05:47:05.17ID:QbuGAkRx0 OS:Linux Mint
コンパイラ:gcc です
コンパイラ:gcc です
773デフォルトの名無しさん (ワッチョイ f069-7kHv)
2022/12/09(金) 06:15:54.45ID:rdO0dbBS0 https://linuxjm.osdn.jp/html/LDP_man-pages/man3/ctime.3.html
localtime_r()を使いましょう
struct tm *tm1 = localtime(&now);
こんな使い方をするって時点でlocaltime()が「何」を返すのか、察しましょう
localtime_r()を使いましょう
struct tm *tm1 = localtime(&now);
こんな使い方をするって時点でlocaltime()が「何」を返すのか、察しましょう
774デフォルトの名無しさん (ワッチョイ d9b3-SeIF)
2022/12/09(金) 06:58:19.07ID:QbuGAkRx0 >>773
サンクス、動いた
サンクス、動いた
775デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/09(金) 07:14:28.04ID:aKtIUC7D0 このへん、言っちゃなんだけどクソだね
なんでこんな変な設計にしたんだろう
なんでこんな変な設計にしたんだろう
776デフォルトの名無しさん (ワッチョイ 2135-BGgp)
2022/12/09(金) 07:27:22.65ID:G83XZmEL0 ローカルで構造体を定義してそこへのポインタを返すとスタックから消えてデータが壊れますか?
777デフォルトの名無しさん (ワッチョイ aa01-QZbE)
2022/12/09(金) 07:54:25.65ID:DDM/thjI0778デフォルトの名無しさん (ワッチョイ aa01-QZbE)
2022/12/09(金) 07:57:34.07ID:DDM/thjI0 >>776
構造体に限らずローカル変数へのポインタを返すとポインタの指す先の内容は壊れる(かもしれない)
構造体に限らずローカル変数へのポインタを返すとポインタの指す先の内容は壊れる(かもしれない)
779デフォルトの名無しさん (スッップ Sd70-AXrT)
2022/12/09(金) 13:31:15.00ID:RVIOSi06d 未定義の動作という
780デフォルトの名無しさん (アウアウウー Sa08-g9pY)
2022/12/09(金) 15:26:27.10ID:Z1cscK2ka >>775
strtok
strtok
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 米大統領報道官「日本と強固な同盟維持、中国とも協力」 [少考さん★]
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- ゆたぼん 二重手術を報告「めちゃくちゃ気に入っています」 [muffin★]
- 【山形】クマ駆除で誤射した猟友会隊員に町が1663万円請求へ...弾当たり男性大けが2023年 小国町 [nita★]
- 【画像】中国、ガチで未来感ハンパない変態スマホを発明してしまう
- 【マギレコ】VIPでマギアレコード&マギアエクセドラ【まどドラ】
- 【画像】サーナイト「お、起きないとチューしちゃうぞ…」ボソ
- 中国人、ガチ超正論。「日本人がアイヌに対してやったことを『問題ない』とするなら、中国が日本人に同じことをしても文句ないだろう?」 [314039747]
- 【悲報】新米、全く売れなくて倉庫が満杯になってしまうwwwwwwwwwwwwwwwwwwww [802034645]
- 【高市悲報】ウクライナ、ガチで敗北か?東部の帰属国民投票にかける可能性-ゼレンスキー [888298477]
