!extend:checked:vvvvv:1000:512
(新スレ立ての際上記コマンドを2行書き込んでください)
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/
※前スレ
C言語なら俺に聞け 155
https://mevius.5ch.net/test/read.cgi/tech/1589120427/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
C言語なら俺に聞け 156
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 9bb7-/QqT)
2020/09/28(月) 14:41:30.00ID:QxfbhGyV0666デフォルトの名無しさん (ワッチョイ 8701-Dpoh)
2021/01/26(火) 21:32:25.57ID:INqgRhQd0 手塚さんとかも綺麗だったな・・おれまだ学生だったw
>>653
コード進行が凄い曲ですね‥‥ギターコードが書いている楽譜ってないですかね?
コード進行が凄い曲ですね‥‥ギターコードが書いている楽譜ってないですかね?
668デフォルトの名無しさん (ワッチョイ 4763-xA1r)
2021/01/27(水) 00:01:47.99ID:fhlKtwwY0 上の空で書いていたのか
669デフォルトの名無しさん (ワッチョイ 47d2-xA1r)
2021/01/27(水) 07:49:16.31ID:or8n1kaA0 8/16bit時代のハードみたいに起動時にメモリサイズやエラーチェックしてワークエリアサイズ固定で設計するだけだわな。
そういやぁある記事で80286って工業用途を想定してて、エラーが発生して停止したら電源入れ直す以外に再起動できないとか言ってたな。
そういやぁある記事で80286って工業用途を想定してて、エラーが発生して停止したら電源入れ直す以外に再起動できないとか言ってたな。
670デフォルトの名無しさん (ワッチョイ 0752-usbt)
2021/01/27(水) 07:52:13.49ID:MIG3AZ730671デフォルトの名無しさん (ワッチョイ 0752-usbt)
2021/01/27(水) 07:59:19.27ID:MIG3AZ730 >>667
非常に簡単なのしか使ってないんで耳コピ簡単じゃ?
非常に簡単なのしか使ってないんで耳コピ簡単じゃ?
672デフォルトの名無しさん (ワッチョイ 5f85-Jq7D)
2021/01/27(水) 10:55:52.75ID:9MA4/mbB0 >656
>「メモリ不足です」と表示されてブレーキが効かなくなった
上級国民が大喜びな仕様だな。
メモリ不足になるような仕様を避けるのが当然で、
それでも起きるなら安全に停止できる機能を搭載するだろ。
とりあえず電源喪失状態でもブレーき利くようにするとか。
そういやぁどっかの列車で安全装置の故障で自動停車されなくて事故ったってのあって、
安全装置からの信号がONになった時にブレーキが作動するって仕様になってたのを
安全装置からの信号が来なくなったら(ずっと信号ONって不具合もかあるだろうから通信のやり取りでもあるのかな)
ブレーキ作動させるようになったって聞いたわ。
>「メモリ不足です」と表示されてブレーキが効かなくなった
上級国民が大喜びな仕様だな。
メモリ不足になるような仕様を避けるのが当然で、
それでも起きるなら安全に停止できる機能を搭載するだろ。
とりあえず電源喪失状態でもブレーき利くようにするとか。
そういやぁどっかの列車で安全装置の故障で自動停車されなくて事故ったってのあって、
安全装置からの信号がONになった時にブレーキが作動するって仕様になってたのを
安全装置からの信号が来なくなったら(ずっと信号ONって不具合もかあるだろうから通信のやり取りでもあるのかな)
ブレーキ作動させるようになったって聞いたわ。
673デフォルトの名無しさん (ワッチョイ a77c-rvE3)
2021/01/27(水) 11:34:46.40ID:cJSBZXf90 >>667
Monacaの田中秀和って好き?
Monacaの田中秀和って好き?
674デフォルトの名無しさん (ワッチョイ a77c-SRxQ)
2021/01/27(水) 12:05:51.10ID:isvLWJ6Q0 >>656
飯塚会長なら言いそうだ
飯塚会長なら言いそうだ
675デフォルトの名無しさん (ワッチョイ a77c-rvE3)
2021/01/27(水) 12:09:55.82ID:cJSBZXf90676デフォルトの名無しさん (ワッチョイ a77c-rvE3)
2021/01/27(水) 12:12:51.81ID:cJSBZXf90 >>663
常にHALT+割り込みのみで書かれたものはあったはず
常にHALT+割り込みのみで書かれたものはあったはず
677デフォルトの名無しさん (ワッチョイ 5f01-Wxou)
2021/01/27(水) 12:27:46.11ID:gQSND64l0678デフォルトの名無しさん (スフッ Sd7f-n4Sq)
2021/01/27(水) 13:33:58.28ID:vpj9vmrAd679デフォルトの名無しさん (ワッチョイ ff2d-xA1r)
2021/01/27(水) 13:57:29.31ID:DAR3YVvc0 HALTと割り込みでもいつかはどこかで最初からの繰り返しループにならない?
割り込み中でステート管理して、スタックを操作して最初に戻るとか?
出来ないマイコンもありそうだけど
割り込み中でステート管理して、スタックを操作して最初に戻るとか?
出来ないマイコンもありそうだけど
680デフォルトの名無しさん (ワッチョイ 4769-V1vN)
2021/01/27(水) 14:01:16.93ID:N60gZ7990 そういう制御込みでコンパイルして吐き出してくれるなら Cの選択肢もあるだろうけど
それが期待できないとなると アセンブラしかない ってことになるのかな
それが期待できないとなると アセンブラしかない ってことになるのかな
681デフォルトの名無しさん (スップ Sdff-usbt)
2021/01/27(水) 17:35:31.51ID:6jCnxoTKd682デフォルトの名無しさん (スップ Sdff-usbt)
2021/01/27(水) 17:36:57.11ID:6jCnxoTKd683デフォルトの名無しさん (ワッチョイ 5f01-Wxou)
2021/01/27(水) 20:45:42.53ID:gQSND64l0684デフォルトの名無しさん (ワッチョイ 2702-ctsJ)
2021/01/27(水) 23:07:06.58ID:7vi5L3Y30 初心者です
変数に&を付けてメモリのアドレスを表示させるプログラムを実行して(0x7efe61e298d8←こんな感じ?)
その後1時間とか経過して別のプログラムでメモリ「0x7efe61e298d8」に格納されたものを表示させることってできるんですかね?
変数に&を付けてメモリのアドレスを表示させるプログラムを実行して(0x7efe61e298d8←こんな感じ?)
その後1時間とか経過して別のプログラムでメモリ「0x7efe61e298d8」に格納されたものを表示させることってできるんですかね?
685デフォルトの名無しさん (ワッチョイ 4763-xA1r)
2021/01/27(水) 23:11:59.94ID:fhlKtwwY0 OSが何かにもよるけど
一般論としては出来る。出来るが、
成功するかどうかは分からない
一般論としては出来る。出来るが、
成功するかどうかは分からない
686デフォルトの名無しさん (ワッチョイ a744-b71I)
2021/01/27(水) 23:34:48.42ID:XppLd9do0 MS-DOSのTSRか
687デフォルトの名無しさん (ワッチョイ 2702-ctsJ)
2021/01/27(水) 23:52:57.86ID:7vi5L3Y30 C言語というよりOS側の問題なんですね
ありがとうございます
ありがとうございます
688デフォルトの名無しさん (ワッチョイ 7f02-n4Sq)
2021/01/28(木) 05:11:34.57ID:52TUUvk80 >>681
それ、スタックを使って構造化プログラミングを実現した言語であるCを使う利点が一切ないような…
組み込み/マイコン向け言語でスタックを使わず構造化プログラミングを実現するにはcpsスタイルの言語がベストなはず、lisp方言schemeにはそれ向けのサブセット仕様もあるし、ホビー界隈ではそこそこ使われてる模様
(但し主なpc向け実装は、アーキテクチャに合ったスタックによるcps実装が多い、念のため)
forthも消えてしまったなあ
C換算百行未満でブートストラップ&セルフホスト処理系が書け、OS機能も兼ね、規格にあるライブラリ関数も改変無しコピペで動く移植性の良さ
c台頭までは組み込み/マイコン界隈を寡占してたんだが
ちゃんとスタック指向&構造化言語だけど、ハードウェアスタックに頼らないので相性がよい
唯一の敗因はlisp以上に深淵なことだな…
cは既に国際語になってしまったので、取り敢えず分かるcで書く、ってのがcが使われる唯一の理由だと思う
それ、スタックを使って構造化プログラミングを実現した言語であるCを使う利点が一切ないような…
組み込み/マイコン向け言語でスタックを使わず構造化プログラミングを実現するにはcpsスタイルの言語がベストなはず、lisp方言schemeにはそれ向けのサブセット仕様もあるし、ホビー界隈ではそこそこ使われてる模様
(但し主なpc向け実装は、アーキテクチャに合ったスタックによるcps実装が多い、念のため)
forthも消えてしまったなあ
C換算百行未満でブートストラップ&セルフホスト処理系が書け、OS機能も兼ね、規格にあるライブラリ関数も改変無しコピペで動く移植性の良さ
c台頭までは組み込み/マイコン界隈を寡占してたんだが
ちゃんとスタック指向&構造化言語だけど、ハードウェアスタックに頼らないので相性がよい
唯一の敗因はlisp以上に深淵なことだな…
cは既に国際語になってしまったので、取り敢えず分かるcで書く、ってのがcが使われる唯一の理由だと思う
689デフォルトの名無しさん (ワッチョイ 4721-aHd2)
2021/01/28(木) 05:58:13.87ID:pfPCg+P40 動的確保なしの32ビットマイコン使って飯食ってるけど、さすがに再起は使わんが、
好きなだけ関数呼び出し深く出来るだけでも恵まれてたんだな。スタックオーバーフローは一応気にしないといかんけど。
ミッションクリティカルなコードなんてゼッテー無理だわw Adaとか使われるんだっけ?と思ったら微妙に廃れ気味なんね。よーしらんけど。
好きなだけ関数呼び出し深く出来るだけでも恵まれてたんだな。スタックオーバーフローは一応気にしないといかんけど。
ミッションクリティカルなコードなんてゼッテー無理だわw Adaとか使われるんだっけ?と思ったら微妙に廃れ気味なんね。よーしらんけど。
690デフォルトの名無しさん (ガラプー KK4f-aOD4)
2021/01/28(木) 08:01:19.64ID:Z02UUfjqK >>684
たぶん意味がない。
今時のOSでは、別々のプログラムからメモリ「0x7efe61e298d8」を参照しても同じ内容にならない。「仮想アドレス」でぐぐれ。
プログラム間で変数をやりとりしたければ、共有メモリを使う方法がある。
たぶん意味がない。
今時のOSでは、別々のプログラムからメモリ「0x7efe61e298d8」を参照しても同じ内容にならない。「仮想アドレス」でぐぐれ。
プログラム間で変数をやりとりしたければ、共有メモリを使う方法がある。
691デフォルトの名無しさん (ワッチョイ 0752-usbt)
2021/01/28(木) 08:05:06.42ID:c7JCU6ma0 今時のOS,CPUだとアクセスした瞬間に例外発生する
692はちみつ餃子 ◆8X2XSCHEME (ワッチョイ bf3e-Jq7D)
2021/01/28(木) 10:46:55.99ID:vBYpvnJx0 >>684
(現代的なコンピュータアーキテクチャでは) 各プロセスのアドレス空間が独立していて、
あるプロセスから見えているメモリの内容と他のプロセスから見えるそれは別物なんだよ。
他のプロセス (が持っているリソース) にアクセスしたりデバイスをコントロールするには
OS に依頼して仲介してもらうという形をとる。
プロセス間でメモリの共有をすることも可能だが、
それもあらかじめ OS に伝えて共有する実体 (物理メモリ) をそれぞれのメモリ空間にマッピングしてもらう形
なので、それを利用するプロセス同士が事前に共有に同意した状態である必要がある。
あるプロセスが自分用に割り当てられたリソース以外にはそう自由にはアクセスできないんだ。
それがセキュリティというものだよ。
(現代的なコンピュータアーキテクチャでは) 各プロセスのアドレス空間が独立していて、
あるプロセスから見えているメモリの内容と他のプロセスから見えるそれは別物なんだよ。
他のプロセス (が持っているリソース) にアクセスしたりデバイスをコントロールするには
OS に依頼して仲介してもらうという形をとる。
プロセス間でメモリの共有をすることも可能だが、
それもあらかじめ OS に伝えて共有する実体 (物理メモリ) をそれぞれのメモリ空間にマッピングしてもらう形
なので、それを利用するプロセス同士が事前に共有に同意した状態である必要がある。
あるプロセスが自分用に割り当てられたリソース以外にはそう自由にはアクセスできないんだ。
それがセキュリティというものだよ。
693デフォルトの名無しさん (ワッチョイ 275f-rvE3)
2021/01/28(木) 11:01:24.92ID:dNWrUHbO0 >>682
毎回リセットして最初から実行するのも君の説ではループの範疇だな
毎回リセットして最初から実行するのも君の説ではループの範疇だな
694デフォルトの名無しさん (ワッチョイ 275f-rvE3)
2021/01/28(木) 11:03:43.19ID:dNWrUHbO0695はちみつ餃子 ◆8X2XSCHEME (ワッチョイ bf3e-Jq7D)
2021/01/28(木) 11:57:56.44ID:vBYpvnJx0 >>694
アクセスされる側にとって (普通は) 意図しないものであるには違いないけど、
一応は OS が許可した上で各プロセスにアタッチする形なので
ひとつのプロセス内でのことになるから別のプロセスからアクセスするのとは理屈が違うんじゃないかな。
プロセスの独立性は壊れないし、権限が上位のプロセスにはアタッチできないんじゃなかったっけ?
まあときどき権限昇格の脆弱性が発見されたりはしてるけど……。
アクセスされる側にとって (普通は) 意図しないものであるには違いないけど、
一応は OS が許可した上で各プロセスにアタッチする形なので
ひとつのプロセス内でのことになるから別のプロセスからアクセスするのとは理屈が違うんじゃないかな。
プロセスの独立性は壊れないし、権限が上位のプロセスにはアタッチできないんじゃなかったっけ?
まあときどき権限昇格の脆弱性が発見されたりはしてるけど……。
696デフォルトの名無しさん (ワッチョイ 5f01-Wxou)
2021/01/28(木) 12:14:49.58ID:eBfsAdOM0 >>684
デバッガでも作りたいのか?
デバッガでも作りたいのか?
697デフォルトの名無しさん (スッップ Sd7f-usbt)
2021/01/28(木) 12:16:47.81ID:Tpt+oTXId >>671
クラシック系の耳にはすごく斬新に聞こえますが、世間一般的には簡単な部類に入るのですか、私は井戸の底の蛙だったんですね‥‥
クラシック系の耳にはすごく斬新に聞こえますが、世間一般的には簡単な部類に入るのですか、私は井戸の底の蛙だったんですね‥‥
>>686
TSR はロマンで私もキー入れ替えとかいろいろ凝っていた時期があったんたけど、TSR に似たプログラミングって最近はなんですか?
TSR はロマンで私もキー入れ替えとかいろいろ凝っていた時期があったんたけど、TSR に似たプログラミングって最近はなんですか?
>>692
でも、i386 アーキテクチャの「コールゲート」とかは廃れてしまったんですよね…‥
でも、i386 アーキテクチャの「コールゲート」とかは廃れてしまったんですよね…‥
701デフォルトの名無しさん (ワッチョイ 8701-b71I)
2021/01/28(木) 20:19:09.21ID:Sg/ycOHU0 WaveToneとかの便利なソフトがあっての
>>701
そのソフトは大昔(win95 の時代)にも開発してくださっていた方がいて便利に浸かっていました‥‥
----------------------------------------------------------------------------
【ソフト名】 TonagramView for Win95 Ver.0.3β
【 作成者 】 Zephyr <NCC00723@niftyserve.or.jp>
【登 録 名】 SHIINE03.LZH
【圧縮形式】 LHa 2.55b
【動作環境】 Windows 95
【転 載】 事前の許可が必要
【掲載月日】 1997/08/30
----------------------------------------------------------------------------
このプログラムは、WAVファイルを周波数解析してtonagram(ピアノロールのような
グラフ)を表示するツールです。
耳コピをしていると、どうしてもコードが採れなくて泣きたくなることがよくあり
ます。そんなときは、tonagramを調べれば、鳴ってる音を目で見ることができるの
で、適当にピックアップしてやれば楽にコードを拾えます。v(^^)
今回、GUI化によりリードアウトカーソルなどの機能が強化されています。
また、解析結果のロード・セーブが可能になりましたので、結果をセーブしておけ
ば解析にかかる時間を節約することができます。
★Ver.0.2βからの改良点
・待望(?)のGUI化
ロード・セーブ・印刷
リードアウトカーソル 等
・ピークサーチアルゴリズムの変更(精度より見た目を重視)
NCC00723 Zephyr
そのソフトは大昔(win95 の時代)にも開発してくださっていた方がいて便利に浸かっていました‥‥
----------------------------------------------------------------------------
【ソフト名】 TonagramView for Win95 Ver.0.3β
【 作成者 】 Zephyr <NCC00723@niftyserve.or.jp>
【登 録 名】 SHIINE03.LZH
【圧縮形式】 LHa 2.55b
【動作環境】 Windows 95
【転 載】 事前の許可が必要
【掲載月日】 1997/08/30
----------------------------------------------------------------------------
このプログラムは、WAVファイルを周波数解析してtonagram(ピアノロールのような
グラフ)を表示するツールです。
耳コピをしていると、どうしてもコードが採れなくて泣きたくなることがよくあり
ます。そんなときは、tonagramを調べれば、鳴ってる音を目で見ることができるの
で、適当にピックアップしてやれば楽にコードを拾えます。v(^^)
今回、GUI化によりリードアウトカーソルなどの機能が強化されています。
また、解析結果のロード・セーブが可能になりましたので、結果をセーブしておけ
ば解析にかかる時間を節約することができます。
★Ver.0.2βからの改良点
・待望(?)のGUI化
ロード・セーブ・印刷
リードアウトカーソル 等
・ピークサーチアルゴリズムの変更(精度より見た目を重視)
NCC00723 Zephyr
703デフォルトの名無しさん (ワッチョイ 6d52-k294)
2021/01/29(金) 00:08:49.78ID:BmYQVI6m0704デフォルトの名無しさん (エムゾネ FF0a-qCTK)
2021/01/30(土) 12:01:56.26ID:EWZvTk3zF >>702
404
404
705デフォルトの名無しさん (ワッチョイ 7d4f-RNyz)
2021/01/31(日) 19:33:07.61ID:jQyDM6Cn0 enum A
{
max_value = 0x7fffffffffffffffLL;
};
こんなことしても64bitのenumはつくれないんだっけ?
{
max_value = 0x7fffffffffffffffLL;
};
こんなことしても64bitのenumはつくれないんだっけ?
706デフォルトの名無しさん (ワッチョイ 8d7f-LESd)
2021/02/01(月) 00:52:02.23ID:5yr9aQzL0 整数型ならいいらしいから、64bitになるコンパイラがあっても規格違反ではないと思う
707デフォルトの名無しさん (ワッチョイ 7d01-cVNB)
2021/02/01(月) 01:29:58.21ID:OjiuyGRS0 infinity 定義されてるだろ?
708デフォルトの名無しさん (ワッチョイ ad45-unxX)
2021/02/01(月) 07:03:50.51ID:v6ebtUL10 整数型に?
709デフォルトの名無しさん (ワッチョイ 7d4f-RNyz)
2021/02/01(月) 07:51:42.98ID:9cKOvUYE0710デフォルトの名無しさん (ワッチョイ 6d52-k294)
2021/02/01(月) 08:04:18.96ID:SoQHgLGL0 64bit整数型がない環境があるんだから
確実に64bit以上なんて無理
確実に64bit以上なんて無理
711デフォルトの名無しさん (ワッチョイ ad45-unxX)
2021/02/01(月) 08:15:50.49ID:v6ebtUL10 sizeof max_value
gcc, clang: 8
cl: 4
gcc, clang: 8
cl: 4
712デフォルトの名無しさん (ワッチョイ 7d4f-RNyz)
2021/02/01(月) 08:27:26.16ID:9cKOvUYE0 >>710
じゃあ「64bit整数が使える環境で」って条件だとどうだろう?
じゃあ「64bit整数が使える環境で」って条件だとどうだろう?
713デフォルトの名無しさん (ワッチョイ 8d7f-con+)
2021/02/01(月) 09:03:50.04ID:5yr9aQzL0 Cのenumはマクロと大して変わらんのだから、マクロで代用するとか
714デフォルトの名無しさん (ワッチョイ ad45-unxX)
2021/02/01(月) 09:11:58.71ID:v6ebtUL10 マクロに代わるべく作られたenumがマクロで代用されるとは
無様な・・・
無様な・・・
715デフォルトの名無しさん (ワッチョイ ad45-unxX)
2021/02/01(月) 09:18:04.19ID:v6ebtUL10 6.7.2.2 Enumeration specifiers
3 The identifiers in an enumerator list are declared as constants that have type int and may appear wherever such are permitted.
6.7.2.2 列挙型指定子
意味規則 列挙子並びの中の識別子は,型int をもつ定数として宣言され,この型の定数が許されるところならばどこに現れてもよい。
はっきり、intと書いてあるね
long longになる余地は全くない
3 The identifiers in an enumerator list are declared as constants that have type int and may appear wherever such are permitted.
6.7.2.2 列挙型指定子
意味規則 列挙子並びの中の識別子は,型int をもつ定数として宣言され,この型の定数が許されるところならばどこに現れてもよい。
はっきり、intと書いてあるね
long longになる余地は全くない
716デフォルトの名無しさん (アウアウウー Sa21-8ou+)
2021/02/01(月) 11:57:56.06ID:vkxM9MCda intとlong longが同一の可能性は残る
まぁ普通ではないが
素直にC++でenum classにするのがいいのでは
まぁ普通ではないが
素直にC++でenum classにするのがいいのでは
717デフォルトの名無しさん (エムゾネ FF0a-qCTK)
2021/02/01(月) 14:28:14.54ID:fos4FOVOF enum と enum class って紛らわしいよね
718デフォルトの名無しさん (ワッチョイ ad45-unxX)
2021/02/01(月) 17:41:32.38ID:v6ebtUL10 enum classは関係ない
enum-baseだ
enum-baseだ
719デフォルトの名無しさん (アウアウウー Sa21-8ou+)
2021/02/01(月) 19:37:32.66ID:vkxM9MCda720デフォルトの名無しさん (ワッチョイ 7d4f-RNyz)
2021/02/01(月) 21:43:21.53ID:9cKOvUYE0 >>715
なるほど、ありがとう。
なるほど、ありがとう。
721デフォルトの名無しさん (ワッチョイ 9e8c-bY9K)
2021/02/02(火) 06:19:12.09ID:wjKGtX300 enumはステート制御で重宝する。
722デフォルトの名無しさん (ワッチョイ 5dd2-merL)
2021/02/02(火) 15:29:55.49ID:gtWVIswm0 質問です。__lsan_disableが期待通りに動きません。
サイト見るとAllocations made between calls to __lsan_disable() and __lsan_enable() will
be treated as non-leaks. Disable/enable pairs may be nested.と書いてあったのでプログラム作りました。
しかし__lsan_enable〜__lsan_do_leak_checkもリークチェックされます。原因が分かりません。
#include </usr/lib/gcc/x86_64-linux-gnu/10/include/sanitizer/lsan_interface.h>
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
void* thFunc(void *arg) { __lsan_disable(); sleep(4); fprintf(stderr, "en start\n"); __lsan_enable();
fprintf(stderr, "en end\n"); sleep(4); __lsan_do_leak_check(); exit(-1);
}
int main() { int rc; pthread_t th; pthread_create(&th, 0, thFunc, 0);
for (int i = 0; i < 30000; i++) { sleep(1); int *p = malloc(1);
fprintf(stderr, "malloc\n"); } return 0;}
よろしくお願いいたします
サイト見るとAllocations made between calls to __lsan_disable() and __lsan_enable() will
be treated as non-leaks. Disable/enable pairs may be nested.と書いてあったのでプログラム作りました。
しかし__lsan_enable〜__lsan_do_leak_checkもリークチェックされます。原因が分かりません。
#include </usr/lib/gcc/x86_64-linux-gnu/10/include/sanitizer/lsan_interface.h>
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
void* thFunc(void *arg) { __lsan_disable(); sleep(4); fprintf(stderr, "en start\n"); __lsan_enable();
fprintf(stderr, "en end\n"); sleep(4); __lsan_do_leak_check(); exit(-1);
}
int main() { int rc; pthread_t th; pthread_create(&th, 0, thFunc, 0);
for (int i = 0; i < 30000; i++) { sleep(1); int *p = malloc(1);
fprintf(stderr, "malloc\n"); } return 0;}
よろしくお願いいたします
723デフォルトの名無しさん (ワッチョイ ea01-s+/V)
2021/02/03(水) 08:08:40.40ID:3ZiqWZ4T0 >>712
処理系依存
処理系依存
724デフォルトの名無しさん (ワッチョイ a902-rtUD)
2021/02/04(木) 11:24:59.43ID:P1e/f4pz0 テキストファイルを読み込む場合、主にfgetsやfgetcでやる方法があると思うのですが調べてみるとmmapを使う方法もあるようなのですがどれを使うのが良いんですかね?
やりたいのはhtmlソースの書かれたテキストファイルの簡単な解析です
もしくは全く別に有名なライブラリみたいなのがあるんでしょうか?
やりたいのはhtmlソースの書かれたテキストファイルの簡単な解析です
もしくは全く別に有名なライブラリみたいなのがあるんでしょうか?
725はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5e3e-unxX)
2021/02/04(木) 12:15:35.04ID:ttCVH4wp0 >>724
大きなファイルに細かなランダムアクセスが発生するときは
シークを繰り返すよりも mmap を活用した方が有利になることもあると思うけど、
常識的に考えればひとつの html はせいぜいが数メガ程度だろうし、
凝った管理をしなくても全部メモリに乗るでしょ。
大きなファイルに細かなランダムアクセスが発生するときは
シークを繰り返すよりも mmap を活用した方が有利になることもあると思うけど、
常識的に考えればひとつの html はせいぜいが数メガ程度だろうし、
凝った管理をしなくても全部メモリに乗るでしょ。
726デフォルトの名無しさん (ワッチョイ a902-rtUD)
2021/02/04(木) 13:31:56.12ID:P1e/f4pz0727はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5e3e-unxX)
2021/02/04(木) 13:43:25.23ID:ttCVH4wp0728デフォルトの名無しさん (スップ Sdea-k294)
2021/02/04(木) 14:20:09.93ID:jgksMTX2d C言語スレで
せいぜい数メガと言っちゃう感覚
せいぜい数メガと言っちゃう感覚
729デフォルトの名無しさん (ワッチョイ 6aa5-eHoJ)
2021/02/04(木) 14:24:26.67ID:xGlwnT6u0 もう21世紀だからな
ここから先は1GBのテキストファイルが普通になる
ここから先は1GBのテキストファイルが普通になる
730デフォルトの名無しさん (ワッチョイ 9f01-pSMo)
2021/02/05(金) 07:55:44.29ID:I+zADhcc0 >>728
テキストファイルを読めてhtmlをパースするような機器で今どき数メガも載ってないケースってかなり珍しいだろ
テキストファイルを読めてhtmlをパースするような機器で今どき数メガも載ってないケースってかなり珍しいだろ
731デフォルトの名無しさん (ワッチョイ 5752-IB1A)
2021/02/05(金) 08:01:49.33ID:XbPEadHi0 せいぜい数メガと言えるようなリッチな環境で
C言語でアプリを書く方が珍しいだろ
C言語でアプリを書く方が珍しいだろ
732デフォルトの名無しさん (ワッチョイ 9f52-xUEw)
2021/02/05(金) 08:20:44.95ID:JqQJ/dMo0733デフォルトの名無しさん (ワッチョイ 5752-IB1A)
2021/02/05(金) 08:32:27.83ID:XbPEadHi0734デフォルトの名無しさん (ワッチョイ 17d2-JWMU)
2021/02/05(金) 08:42:07.98ID:oeXhrntJ0 「決めつけ」はバグとセキュリティホールの元。
735デフォルトの名無しさん (スプッッ Sdcb-aPA7)
2021/02/05(金) 09:02:30.99ID:AjJLCZmld スパコンのOSはCで書かれている
736デフォルトの名無しさん (ワッチョイ 9f01-pSMo)
2021/02/05(金) 09:20:14.53ID:I+zADhcc0737デフォルトの名無しさん (スップ Sd3f-IB1A)
2021/02/05(金) 12:39:42.10ID:1XmQmKI8d738デフォルトの名無しさん (ドコグロ MMdf-pSMo)
2021/02/05(金) 12:52:09.08ID:AV0Gp17OM >>737
珍しくないと言うなら実例をあげればいいだけ
珍しくないと言うなら実例をあげればいいだけ
739デフォルトの名無しさん (ワッチョイ 9fad-MLSE)
2021/02/06(土) 10:12:48.76ID:DFt8vUVO0 mmapってUNIX系OSだけでは?他にもあるかも知れないが互換ライブラリ経由でそのOS固有の同機能のやつ呼んでたりしない?(それで良いなら良いんだが)
740デフォルトの名無しさん (アウウィフ FF9b-6HDI)
2021/02/06(土) 10:51:00.80ID:PohEB++tF 対象をhtmlに限定したのが敗因
741デフォルトの名無しさん (ガラプー KK4f-o9Gs)
2021/02/06(土) 11:26:44.70ID:EjDQT0l8K742デフォルトの名無しさん (ワッチョイ 9f01-pSMo)
2021/02/06(土) 11:45:50.67ID:zn5WrP4C0 >>739
何が問題なのかよくわからんが?
何が問題なのかよくわからんが?
743デフォルトの名無しさん (ワッチョイ 6f8c-w83u)
2021/02/22(月) 07:04:45.29ID:Xbe4DE+80 どうやったらループを小さくしたり無くしたり出来るのか教えてほしい。
744デフォルトの名無しさん (ワントンキン MM9f-H4LT)
2021/02/22(月) 08:02:42.93ID:NYs90WT8M べた書き?
printf("hello flat!\n");
printf("hello flat!\n");
printf("hello flat!\n");
printf("hello flat!\n");
printf("hello flat!\n");
printf("hello flat!\n");
745デフォルトの名無しさん (ワッチョイ b325-Hwf9)
2021/02/22(月) 17:21:30.68ID:iIDQLaUs0 標準ライブラリにある処理はなるべく標準ライブラリのを使うとか
ループをまとめて関数に出すとかでいいんじゃないの?
根本的な解決にはならないかもだけど複雑度は下がる
あとはアルゴリズムの改善しかないんやない
ループをまとめて関数に出すとかでいいんじゃないの?
根本的な解決にはならないかもだけど複雑度は下がる
あとはアルゴリズムの改善しかないんやない
746デフォルトの名無しさん (スフッ Sd1f-4oy0)
2021/02/23(火) 02:48:11.51ID:VIkkm8/qd747デフォルトの名無しさん (スフッ Sd1f-4oy0)
2021/02/23(火) 03:04:42.97ID:VIkkm8/qd >>743
ループ変数をi, j, kとすれば、int ijk(範囲はi*j*k)とまとめればネストレベル3→1にできるよ
i = ijk/j/k
j = ijk%(j*k)/k
k = ijk%kね
パフォーマンスの利点もある
mo量子化学計算はナイーブには最低4段のforが要求されるんで、かなり重宝
なんで4段をcollapseしたいけど、他人が初見で解釈するのはちょっと無理強いなので控えてる
ループ変数をi, j, kとすれば、int ijk(範囲はi*j*k)とまとめればネストレベル3→1にできるよ
i = ijk/j/k
j = ijk%(j*k)/k
k = ijk%kね
パフォーマンスの利点もある
mo量子化学計算はナイーブには最低4段のforが要求されるんで、かなり重宝
なんで4段をcollapseしたいけど、他人が初見で解釈するのはちょっと無理強いなので控えてる
748デフォルトの名無しさん (スフッ Sd1f-4oy0)
2021/02/23(火) 03:15:27.68ID:VIkkm8/qd いや今書いたのも改めて並べるとmodに慣れていと1分くらい考えるか…
二段は簡潔なのでイディオムとして使って良いと思う
i*jを走るループ変数ijに対し、i==ij/j, j==ij%j
ネストは半分になるし可読性もよいので、多分ベストプラクティス
ネストしたループを全てワンライナーで書けるFortranが羨ましい
二段は簡潔なのでイディオムとして使って良いと思う
i*jを走るループ変数ijに対し、i==ij/j, j==ij%j
ネストは半分になるし可読性もよいので、多分ベストプラクティス
ネストしたループを全てワンライナーで書けるFortranが羨ましい
749デフォルトの名無しさん (ワッチョイ 93da-W5tZ)
2021/02/23(火) 03:42:44.91ID:1ia+Vnu00 divもmodもクソ遅いと思うんですがそれは
750デフォルトの名無しさん (スフッ Sd1f-4oy0)
2021/02/23(火) 04:31:33.75ID:VIkkm8/qd751デフォルトの名無しさん (スフッ Sd1f-4oy0)
2021/02/23(火) 04:35:35.49ID:VIkkm8/qd だからといってわざわざ速い最適化divmod拾ってくるまでの価値も無いし、つまらんハックか
猛省
猛省
752デフォルトの名無しさん (ガラプー KKa7-b/Iq)
2021/02/23(火) 08:24:27.89ID:NtDnGIIYK まあ定数の割り算は掛け算で実装するよな
753751 (スフッ Sd1f-4oy0)
2021/02/23(火) 12:00:01.73ID:EYNng8zFd >>752
今アセンブリ見てみたら2147...647=2^32-1を引いて頑張ってる様子が見えた!gcc -O3/win
色々パラメータ弄って様子見ようとしたら普通に割り出したので混乱したが、実行時に与えるとフォールバックするよう
コンパイル時に定数で与えたらそうするっぽい
勉強になった
今アセンブリ見てみたら2147...647=2^32-1を引いて頑張ってる様子が見えた!gcc -O3/win
色々パラメータ弄って様子見ようとしたら普通に割り出したので混乱したが、実行時に与えるとフォールバックするよう
コンパイル時に定数で与えたらそうするっぽい
勉強になった
754デフォルトの名無しさん (ワッチョイ 93da-W5tZ)
2021/02/23(火) 12:21:23.56ID:1ia+Vnu00 目安でしかないがx86-64ではmulと比べてdivやmodはレイテンシ2倍どころではない場合が多い
https://www.agner.org/optimize/instruction_tables.pdf
パフォーマンスが重要な場合は除数を定数にするか2の冪にしてシフト/論理積にする
https://www.agner.org/optimize/instruction_tables.pdf
パフォーマンスが重要な場合は除数を定数にするか2の冪にしてシフト/論理積にする
755デフォルトの名無しさん (ワッチョイ 6f8c-Dcdc)
2021/02/24(水) 15:46:51.63ID:/D2VYVJH0 ソフトウェア割り込みプログラムは書けるのか
756デフォルトの名無しさん (ワッチョイ a301-GD1z)
2021/02/25(木) 06:12:34.32ID:R7WVwVFS0 >>755
インラインアセンブラ必須かな
インラインアセンブラ必須かな
757デフォルトの名無しさん (ワッチョイ ff01-aOo0)
2021/02/25(木) 07:07:20.11ID:bxBNuN1v0 環境次第
組み込み系の処理系だと割り込みハンドラーを書けたり割り込みフラグの制御ができたりするのはよくある
組み込み系の処理系だと割り込みハンドラーを書けたり割り込みフラグの制御ができたりするのはよくある
758デフォルトの名無しさん (ワッチョイ a301-GD1z)
2021/02/25(木) 09:55:57.73ID:R7WVwVFS0 >>757
それはC言語仕様には無い特殊な命令。SHのCコンパイラとか。
それはC言語仕様には無い特殊な命令。SHのCコンパイラとか。
759デフォルトの名無しさん (ワッチョイ a32f-2wuD)
2021/02/25(木) 19:11:28.17ID:k63j55rm0 VCで作った実行ファイルを
cgiファイルに変える方法て
わからない?
どうしてもc.cgi.exeになって
しまう
cgiファイルに変える方法て
わからない?
どうしてもc.cgi.exeになって
しまう
760デフォルトの名無しさん (ドコグロ MMdf-jbj7)
2021/02/25(木) 19:17:09.21ID:JLHf2OjdM761デフォルトの名無しさん (ワッチョイ a301-VKJl)
2021/02/25(木) 20:00:24.23ID:MOr3wCfr0 ファイル名変えておいとくだけなんとちゃうの?
762デフォルトの名無しさん (ワッチョイ 8363-W5tZ)
2021/02/25(木) 20:06:31.57ID:ZW7ncKwI0 Windows系サーバーだったら、
実行ファイルc.exeをc.cgiにリネームすれば動くはず
実行ファイルc.exeをc.cgiにリネームすれば動くはず
763デフォルトの名無しさん (ガラプー KKa7-b/Iq)
2021/02/25(木) 20:47:45.34ID:yh+1kBamK764デフォルトの名無しさん (ワッチョイ cb01-jB1a)
2021/02/26(金) 03:45:13.89ID:5d4w5oMJ0 >>763
スレチ
スレチ
765デフォルトの名無しさん (ガラプー KKbb-sT37)
2021/02/26(金) 06:57:40.05ID:eCf8RuSVK //何だよ俺のせいかいw
//じゃせいぜいCだけででがんばりや
#include <stdio.h>
int main() { return rename("c.cgi.exe", "c.cgi"); }
//じゃせいぜいCだけででがんばりや
#include <stdio.h>
int main() { return rename("c.cgi.exe", "c.cgi"); }
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「日本はドイツと違い反省せず」…中国外相、独外相に対日批判 台湾問題で理解求める [少考さん★]
- 【おこめ券】鈴木農相 米価維持の意図「一切ない」 [ぐれ★]
- 【警視庁】走行中の電車で女性に露出した下半身押しつけたか 無職の男(46)逮捕「チャンスがあればいつでもやる」 [nita★]
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★6 [七波羅探題★]
- 【苺ましまろ】立民衆院議員、人気漫画の水着少女画像を「醜悪」タイ人少女の性搾取事件と関連付け…党内で反発 [少考さん★]
- 「残業キャンセル界隈」若者が増加?「職務放棄」との批判も…“定時退社の権利”どこまで通用するか [七波羅探題★]
- 高市政権「かけてもつながらない。機能していない」防衛当局間のホットライン機能せず [834922174]
- あたしゃやだよ
- 【高市悲報】中国軍「公海で空母の発着訓練するって事前通告したのになんで自衛隊機は急接近してきたんだ…?」中国軍困惑 [931948549]
- 【高市悲報】中国軍「公海で空母の発着訓練するって事前通告したのになんで自衛隊機は急接近してきたんだ…?」中国軍困惑★2 [931948549]
- 30過ぎた大人おじさんが大学生(昔)のままのファッションをする「おじさんキッズコーデ」、炎上して問題視される。 [153490809]
- 【朗報】ケンモジサンが買うふりかけ、二択に絞られる [394133584]
