>>186
VCで確認したら警告は出たがエラーではないので実行出来た上で誤作動(描かれた通りには動いている)
警告レベル替えればエラーにも出来るんだろうけど
文字列リテラルポインタからワイド文字列リテラルポインタへの自動キャスト(あるいはその逆のキャスト)以外のところにも影響出てエラーだらけになるかも
文字列リテラルポインタからワイド文字列リテラルポインタへの自動キャスト(あるいはその逆のキャスト)限定でエラーにならないかな
探検
C言語なら俺に聞け 164
188デフォルトの名無しさん (アウアウウー Sa0b-WraW)
2025/11/26(水) 11:37:21.77ID:g4n+mUAPa189はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6732-A6do)
2025/11/26(水) 15:23:02.27ID:ZGYu6bhA0 >>188
MSVC がそんな馬鹿げた仕組みとは驚きだな。
合わない型 (本来は暗黙の型変換も認められない型) は一律にエラーになるべきだけれど、とりあえず自分のコードで型が合わないケースをエラーにしたいなら
#pragma warning(error : 4133)
とするくらいが落としどころじゃないかと思う。
MSVC がそんな馬鹿げた仕組みとは驚きだな。
合わない型 (本来は暗黙の型変換も認められない型) は一律にエラーになるべきだけれど、とりあえず自分のコードで型が合わないケースをエラーにしたいなら
#pragma warning(error : 4133)
とするくらいが落としどころじゃないかと思う。
190デフォルトの名無しさん (スフッ Sd7f-Lg42)
2025/11/27(木) 05:19:27.44ID:KfDQEfrsd191デフォルトの名無しさん (ワッチョイ 5f81-w0D3)
2025/11/29(土) 18:02:47.96ID:MnjgLok40 固定小数点でも誤差が出ます
とかトンチンカンなこと言い出すやついるけど
割り算しなきゃほぼ誤差ないんだよ
とかトンチンカンなこと言い出すやついるけど
割り算しなきゃほぼ誤差ないんだよ
192デフォルトの名無しさん (ワッチョイ 79f6-v69L)
2025/12/01(月) 12:04:42.29ID:HDTmHOXC0 gmp使ったソースだった
193デフォルトの名無しさん (アウアウウー Sa21-v69L)
2025/12/03(水) 11:46:07.94ID:G3Cx7y7oa194デフォルトの名無しさん (ワッチョイ 6a4e-Qxko)
2025/12/03(水) 22:47:42.54ID:E5HetRmY0195デフォルトの名無しさん (ワッチョイ 6a4e-Qxko)
2025/12/03(水) 22:51:48.92ID:E5HetRmY0 こういうのも、流行のclaudeとかで聞くもんなんかな?
196はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7732-7TsH)
2025/12/09(火) 18:21:11.05ID:4lQ1LhG80 ツールを起動するだけで CERT C コーディングスタンダードに準拠か否か判定するというレベルの簡単なものはないというか無理。
機械的な検証が困難な項目は人が精査する必要がある場合もあるからツールはあくまでも補助だよ。
まずは項目を大まかに分類して機械的に出来るところは機械的にやって残りは人が検証 (レビューやテスト) する体制を整えるしかない。
きちんとやろうとすると技術的なことより組織の運営の話になるんじゃないかな……
機械的な検証が困難な項目は人が精査する必要がある場合もあるからツールはあくまでも補助だよ。
まずは項目を大まかに分類して機械的に出来るところは機械的にやって残りは人が検証 (レビューやテスト) する体制を整えるしかない。
きちんとやろうとすると技術的なことより組織の運営の話になるんじゃないかな……
197デフォルトの名無しさん (ワッチョイ 7703-EGrP)
2025/12/11(木) 01:14:00.20ID:VWVRinEO0 コーディングルールはサイトでの指定以外は気にしたことが無いなあ笑
198デフォルトの名無しさん (ワッチョイ 1f22-1bfe)
2025/12/16(火) 15:40:55.95ID:unxv0LoC0 C言語であるサブルーチンを作ろうとしてるんだけど、FILE* fで開いたファイルを一旦閉じて作業をして、また開きたいんだが、FILE* f だけを引数にしたい。そんなこと出来る?
開いたファイルの名前を引数にできれば、その名前で再度開けるが、FILE* f のポインタだけを引数にしてそんなこと出来るのかな?
開いたファイルの名前を引数にできれば、その名前で再度開けるが、FILE* f のポインタだけを引数にしてそんなこと出来るのかな?
199デフォルトの名無しさん (ワッチョイ 1e87-zkFG)
2025/12/16(火) 16:02:20.55ID:BhrzwszF0 できない
FILEが生きているうちならパス名を調べるのは多分できるだろな
FILEが生きているうちならパス名を調べるのは多分できるだろな
200はちみつ餃子 ◆8X2XSCHEME (ワッチョイ e332-f85/)
2025/12/16(火) 16:25:43.79ID:8p6wZKuQ0 >>198
閉じた時点で FILE* 型のハンドルは無効になる。
無効になったハンドルに対して出来ることは何ひとつない。
ファイルを開いている内に再び開くために必要な適用な情報を確保しておくしかない。
言語仕様上は細かい規定は無いのでホスト環境 (OS) に依存したなんらかの手段を使う必要がある。
Linux なら inode 番号あたりを保持しておけばファイル名を覚えておくより短くて済むからいいんじゃないかな?
まあ開くときにはたぶん一旦ファイル名を取得する必要はあるんだけど。
(他の OS でもだいたい似たような仕組みは有る。 Windows だと GetFileInformationByHandle を調べてみると良い。)
閉じた時点で FILE* 型のハンドルは無効になる。
無効になったハンドルに対して出来ることは何ひとつない。
ファイルを開いている内に再び開くために必要な適用な情報を確保しておくしかない。
言語仕様上は細かい規定は無いのでホスト環境 (OS) に依存したなんらかの手段を使う必要がある。
Linux なら inode 番号あたりを保持しておけばファイル名を覚えておくより短くて済むからいいんじゃないかな?
まあ開くときにはたぶん一旦ファイル名を取得する必要はあるんだけど。
(他の OS でもだいたい似たような仕組みは有る。 Windows だと GetFileInformationByHandle を調べてみると良い。)
201デフォルトの名無しさん (ワッチョイ 1f22-1bfe)
2025/12/16(火) 17:12:42.21ID:unxv0LoC0 みなさんありがとう。OSはWindowsです
GetFileInformationByHandle も調べてみたけど、これではファイル名は出てきませんね
多分FILE* fからファイル名が出てこないと、無理っぽいですね
GetFileInformationByHandle も調べてみたけど、これではファイル名は出てきませんね
多分FILE* fからファイル名が出てこないと、無理っぽいですね
202デフォルトの名無しさん (ワッチョイ 1ecd-zkFG)
2025/12/16(火) 17:27:33.70ID:BhrzwszF0 GetFinalPathNameByHandle
geminiに聞いただけで期待通り動くかは知らん
geminiに聞いただけで期待通り動くかは知らん
203はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 77e8-b0Pp)
2025/12/16(火) 17:47:00.48ID:fxmzBDbu0 windows の場合はファイル番号 (FRN) から直接にファイルを開くことができるっぽい。
204デフォルトの名無しさん (ワッチョイ 1f22-1bfe)
2025/12/16(火) 17:48:08.13ID:unxv0LoC0 >>202
GetFinalPathNameByHandleやってみたけど残念
まあ、考えたらWindowsではHANDLE。FILEではないからね。HANDLEなら多分うまくいくんだろうね
でもいい関数を教えてもらいました。ありがとう
FILEからHANDLEに変更して作り直すかな。他人が作ったソフトを改造してやってるので
そもそも、FILEとHANDLEって何が違うのかなコンバートって出来る?
HANDLEはWindows専用でやってそうだから無理そうね
GetFinalPathNameByHandleやってみたけど残念
まあ、考えたらWindowsではHANDLE。FILEではないからね。HANDLEなら多分うまくいくんだろうね
でもいい関数を教えてもらいました。ありがとう
FILEからHANDLEに変更して作り直すかな。他人が作ったソフトを改造してやってるので
そもそも、FILEとHANDLEって何が違うのかなコンバートって出来る?
HANDLEはWindows専用でやってそうだから無理そうね
205デフォルトの名無しさん (ワッチョイ 1ecd-zkFG)
2025/12/16(火) 18:25:26.73ID:BhrzwszF0206はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 77e8-b0Pp)
2025/12/16(火) 19:25:00.08ID:fxmzBDbu0 Windows では FILE の下にファイルディスクリプタっぽいものがあって、その下に本来の Win32 API があるという三層構造になってる。
msvcrt.dll (または ucrt.dll) が C や POSIX の仕様に合わせた機能を提供しているが、必要に応じて Win32 API 用のハンドルを取り出すことはできる。
msvcrt.dll (または ucrt.dll) が C や POSIX の仕様に合わせた機能を提供しているが、必要に応じて Win32 API 用のハンドルを取り出すことはできる。
207デフォルトの名無しさん (ワッチョイ 1f22-1bfe)
2025/12/16(火) 19:50:18.68ID:unxv0LoC0 ありがとう。調べてみます
208デフォルトの名無しさん (ワッチョイ 72d0-AmFD)
2025/12/16(火) 21:05:39.33ID:ugyur8tL0 最近開いたファイル から引っ張ってこれないのか?
209デフォルトの名無しさん (ワッチョイ a77f-Iabs)
2025/12/16(火) 21:38:52.25ID:x7DniZMa0210デフォルトの名無しさん (ワッチョイ 6358-hA2T)
2025/12/17(水) 00:35:55.40ID:9wOraPAW0 そのファイルを誰かが開くことは想定しなくて良いのか?
211デフォルトの名無しさん (ワッチョイ 12ad-FV3J)
2025/12/18(木) 01:16:26.13ID:qZgjLdb10 >>198
それ絶対に閉じないといけないのか? fflush() するだけじゃダメ?
それ絶対に閉じないといけないのか? fflush() するだけじゃダメ?
212デフォルトの名無しさん (ワッチョイ 1ed8-v2wD)
2025/12/18(木) 09:00:10.06ID:T7xRzDCt0 DBとして機能するファイルならDBつかえよ?
213デフォルトの名無しさん (アウアウウー Sa43-Zm2/)
2025/12/19(金) 13:27:44.03ID:uPPpqdRma214デフォルトの名無しさん (アウアウウー Sa43-Zm2/)
2025/12/19(金) 13:33:27.31ID:uPPpqdRma https://learn.microsoft.com/ja-jp/cpp/c-runtime-library/reference/get-osfhandle
HANDLE h =(HANDLE)_get_osfhandle(fileno(fp));
HANDLE h =(HANDLE)_get_osfhandle(fileno(fp));
215デフォルトの名無しさん (ワッチョイ 1610-1bEy)
2025/12/19(金) 14:08:20.19ID:GilgZVjz0 質問者の意図がよく分からない
FILE*で操作したいと言うことは、
誰かが上位でopenしてくれる前提なのかな?
FILE*で操作したいと言うことは、
誰かが上位でopenしてくれる前提なのかな?
216デフォルトの名無しさん (ワッチョイ 1e18-kuSR)
2025/12/19(金) 17:52:53.90ID:oWecYqFH0 こうしてバグの温床が生まれたと。
217はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 775a-b0Pp)
2025/12/19(金) 20:20:49.60ID:LTe4LjTR0 他人が作ったプログラムをよく理解しないまま改造するという前提ではなるべく構造を変えないという選択肢がマシになることはなくもない。
もちろんきちんと理解して必要な形に整理しなおすのがよりよいに決まってるんだが、そう理想通りにできるとは限らない。
もちろんきちんと理解して必要な形に整理しなおすのがよりよいに決まってるんだが、そう理想通りにできるとは限らない。
218デフォルトの名無しさん (ワッチョイ 922e-1bfe)
2025/12/19(金) 20:28:04.21ID:tQhsUV0y0 なんなの、この糞コテ?
219デフォルトの名無しさん (ワッチョイ 63c8-1bEy)
2025/12/19(金) 22:01:36.42ID:1MzI+xf/0 おいしそうだろ
220デフォルトの名無しさん (ワッチョイ a7c7-WNn4)
2025/12/20(土) 07:50:33.87ID:QsyRy9oL0 >>218
お前よりは数段役にたつやつだから 暖かく見守れ
お前よりは数段役にたつやつだから 暖かく見守れ
221デフォルトの名無しさん (JP 0Hdf-ujNw)
2025/12/21(日) 13:25:50.09ID:i93tKLa3H うちの近所にも蜂蜜餃子出す店ある
レスを投稿する
ニュース
- H3ロケット8号機、打ち上げ後に「第2段エンジン早期に燃焼終了」 [少考さん★]
- 【速報】長期金利が一時2.050%に上昇。1999年2月以来、26年10カ月ぶり [蚤の市★]
- 鈴木農水相「自由にコメ作れば価格が暴落する」おこめ券はコメ価格に「ほとんど影響なし」 ★2 [Hitzeschleier★]
- 高市首相、就任2カ月 取材対応よりSNS発信重視 不都合な情報、伝えぬ恐れも [Hitzeschleier★]
- 【本】日本の「移民大国化」が止まらない…最新データが示す"永住型の労働移民は世界3位"という衝撃の現実 (是川 夕氏) [少考さん★]
- 長期金利上昇一時2.095% 27年ぶり、日銀の利上げ継続観測 [蚤の市★]
- 【特大悲報】1千億円かけて開発した日本製衛星を積んだH3ロケット、第二エンジンが機能せず打ち上げ失敗…宇宙のもずくに☠ [339712612]
- 【高市悲報】ネトウヨ「いつから日本が輸入で成り立ってる国になったんですか😤」 [359965264]
- 【特大悲報】1千億円の日本製衛星を積んだH3ロケット、打ち上げ失敗…宇宙のもずくに☠★3 [339712612]
- 【無職出禁】有職達の休憩所🥴😶‍🌫😃🏡
- 【トラス高市】日本国債売り・円売りで日本終わる [663382246]
- 【ネトウヨ悲報】中国産コメ🌾、飛ぶように売れまくりwww [709039863]
