[過去ログ] C++相談室 part157 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
654: 2021/10/17(日)11:30 ID:0m7FLjXf(1/4) AAS
>>652
ええ…
655: 2021/10/17(日)11:47 ID:XrR+wpGu(2/7) AAS
真理情報:fgets()はUTF-16やUTF-32のテキストファイルを正しく読み込めない
656(1): 2021/10/17(日)12:13 ID:0m7FLjXf(2/4) AAS
ワイド文字用の関数は使っちゃだめということ?
まあ使い方よくわからんけど
657: 2021/10/17(日)12:16 ID:XrR+wpGu(3/7) AAS
HTMLなりXMLなりJSONなりそれぞれパーサーがすでにあるのだからその恩恵を享受するのがナウなヤングの取るべき道でしょ
658(2): 2021/10/17(日)12:21 ID:4Zt4uwKf(3/5) AAS
>>652
俺ならCreateFileMappingを使う
fgetsなんて頭の更新が止まった昭和時代の化石のうちでも地頭までひどいやつの使うものだな
659: 2021/10/17(日)12:21 ID:cds0CTiX(2/3) AAS
>>656
ワイド文字は環境によってUTF16だったりUTF32だったりで仕様が定まらないので使いにくい
660(1): 2021/10/17(日)12:22 ID:XyIQiUpb(3/5) AAS
>>658のような勝手にmmap使っちゃうようなのがいるとバグだらけになるよ
661(1): 2021/10/17(日)12:24 ID:XrR+wpGu(4/7) AAS
Java、Python、Ruby、Javscriptなどの他言語にファイル読込み処理を移植する徒労を考えないバカが集うスレはここですね
662: 2021/10/17(日)12:25 ID:jNwhUFcS(1) AAS
>>ID:NekA8urB の丸投げ君、己の課題であることを伏せて、お題スレに出題!
663: 2021/10/17(日)12:27 ID:MD8jEcOV(1) AAS
ここまでifstreamの話なし
664: 2021/10/17(日)12:28 ID:PatMwtBc(1) AAS
組み込みに近いところいると、大抵自炊に近い状態になるわ。
たとえばiostreamコンパイル通るやん、ってリンカがフラッシュ容量超えを宣告しやがる(フラッシュが640KiBもある豪華マイコンやで)。
上の方でrandom_deviceカスタマイズするの簡単にでけんやん、とか。ハード乱数なんて別にクラスに押し込んでも意味薄だけど。
665: 2021/10/17(日)12:29 ID:4Zt4uwKf(4/5) AAS
>>661
他言語に移植するかどうかはおまえさんが決めることじゃないよ
プログラム技術板で下品な言葉に頼るのは低脳の証明だぜ
666(1): 2021/10/17(日)12:29 ID:XyIQiUpb(4/5) AAS
C++の標準ライブラリを使用しない前提でファイル読み込みを考えるならOS固有の関数を呼ぶべきって言ってるだけだよ
C++の標準ライブラリを使用しないでCの標準ライブラリ呼ぶには何か正当な理由がいると思う
667: 2021/10/17(日)12:35 ID:QqhGhKAl(1/3) AAS
標準ライブラリのストリームは遅延評価やらなんやら余計な思惑が付いてるのでとにかく重い。
668(1): 2021/10/17(日)12:36 ID:Bq9qBgnd(1) AAS
>>666
<cstdio>はC++標準ライブラリの一部だよ
669: 2021/10/17(日)12:36 ID:0m7FLjXf(3/4) AAS
readもfreadもposixじゃろうよ
変わらんよ
670(2): 2021/10/17(日)12:37 ID:QqhGhKAl(2/3) AAS
APIならサクサク快適。
1Gbps/s出る。
標準ライブラリは500Mbps/sくらいしかでない。
671: 2021/10/17(日)12:39 ID:0m7FLjXf(4/4) AAS
>>670
なんだよapiって
672: 2021/10/17(日)12:41 ID:XrR+wpGu(5/7) AAS
システムコールと言いたかったんだろうよ。察して差しあげろ
673(1): 2021/10/17(日)12:41 ID:XyIQiUpb(5/5) AAS
>>668
C++からCの標準ライブラリを呼ぶならこちらを使えという意味
>>670
そういうのは具体的な根拠の提示が必要
674: 2021/10/17(日)12:45 ID:QqhGhKAl(3/3) AAS
>>673
俺は見たんだ。
675: 2021/10/17(日)13:12 ID:4Zt4uwKf(5/5) AAS
>>660
mmap+おまえさん→バグ
という化学反応みたいなもんか
676(1): 2021/10/17(日)13:26 ID:GKP6XQtx(1/3) AAS
fgetsはバイトを扱うのか文字を扱うのか分かりにくいよね
Javaはバイトを読むInputStreamと文字を読むReaderに分かれてる
ファイルは当然文字だからInputStream、上位のReaderで文字コードや改行コードを加味する
Cはバイトも文字もchar[ ]で扱うからAPIもバイト扱い・文字扱いが混在してる
fgetsは改行コードで区切るからバイトではなく文字を扱う関数のように思えるけど、実際は文字コードなどは考慮されないのでバイト読み取り程度にしか使えないしワイドキャラクタも扱えない
中途半端だと思う
677: 2021/10/17(日)13:26 ID:GKP6XQtx(2/3) AAS
ファイルは当然文字
678: 2021/10/17(日)13:27 ID:GKP6XQtx(3/3) AAS
じゃなくて
ファイルは当然バイトね ごめん、、
679: 2021/10/17(日)13:44 ID:mjSP52s5(1) AAS
>>676
時代背景も考えずに中途半端とか言われても…
680: 2021/10/17(日)13:48 ID:cds0CTiX(3/3) AAS
まぁ、欧米の毛唐どもにもようやく必要性が理解できたchar8_tの導入が進めば文字コードはutf8に統一されていくとは思うけど、
utf8はutf8で冗長コードの問題があるからな…その辺のルールも統一しとかないとバグが量産されることになるな
681: 2021/10/17(日)13:54 ID:XrR+wpGu(6/7) AAS
2021年になってもテキストファイル読み込みの話をしなければならないC++の哀しさ
682: 2021/10/17(日)13:58 ID:7C23oe5i(1) AAS
ifstream とか
#include <iostream>
とか観るとダサいなーとしか思わない
683: 2021/10/17(日)14:06 ID:XrR+wpGu(7/7) AAS
Windowsのcode pageのような列挙型と文字セット判定クラスがC++で標準化されてないとテキスト読み込み処理を標準化できないでしょ
文字セット判定クラスは既存の判定ライブラリも標準インターフェースを介して使えるように的な
684(1): 2021/10/17(日)21:21 ID:X4C5aaqV(1) AAS
すまんもうPythonでよくね
685: ハノン ◆QZaw55cn4c 2021/10/17(日)21:41 ID:iZHfLY3S(1) AAS
>>684
せやね
686(1): 2021/10/18(月)07:17 ID:SjUVJOBm(1/7) AAS
C++ではなくCを使うというならまだそいつなりに筋が通る可能性があるが
C++でfgetsにしがみつくのはC++のライブラリについてこれなかっただけの
無能の中の無能だ
687(2): 2021/10/18(月)07:27 ID:guTQadjs(1/2) AAS
C++でファイル操作にcstdio(というかFILE*)を使うべきだと宣うなら
せめてその場合の例外安全性くらい論じてくれないと話にならな
688(1): 2021/10/18(月)07:44 ID:G16mKgJ/(1/5) AAS
>>658
Create !
File !
Mapping !
なんでテキストファイルを読み込むだけのためにそんんあ牛刀(しかも移植性が乏しい)を使わねばならんのじゃ……
だいたい標準ストリーム(istream/ ostreamでも良いが)との結合はどうするんじゃ……
std::streambuf派生クラスとか自力で書くんか……
やっぱ頭にうんこ詰まってる人からはうんこしか出てきませんね……
689: 2021/10/18(月)07:47 ID:G16mKgJ/(2/5) AAS
>>686
fgets()の使用はC++についていけなくてしがみついているのではなくて、
天才の判断である
690(1): 2021/10/18(月)07:52 ID:SjUVJOBm(2/7) AAS
>>688
あーおまえさん、あのAPIをベアで使ってるのか
ご苦労なこったな
C++使ってんのにクラス化って発想ねえのか
691(2): 2021/10/18(月)07:56 ID:G16mKgJ/(3/5) AAS
>>687
>例外安全性くらい論じてくれないと
cstdioの仕様は突っ込んで調べてはいないがファイルの読み書きに関して
例外をスローすることがあるとしたら改悪で大層な失敗ライブラリとしか言いようが無い
ていうか例外安全というのは眉唾な概念でありまして、
40TBまでメモリを食いつぶしたら例外をスローするが
39.9999TBまでメモリを食いつぶしても何も起きないというコードは
システム全体の動作を担保できておらず設計したとは言えない
もっと定量的にプロアクティブな処置を講じるべきで、システムの正常動作を例外に依存させる設計は無い
692: 2021/10/18(月)07:57 ID:G16mKgJ/(4/5) AAS
>>690
ますますのうんこ発言ご苦労
で、標準ストリーム(istream/ ostreamでも良いが)との結合はどうするんじゃ……
693: 2021/10/18(月)08:00 ID:pufTxU/Z(1) AAS
標準じゃないとか言うから突っ込まれてるのに
694: 2021/10/18(月)08:13 ID:G16mKgJ/(5/5) AAS
この議論の中で自作クラス推しはポエミーすぐる
やっぱうんこ製造機な人は仕方が無い
695: 2021/10/18(月)08:23 ID:SjUVJOBm(3/7) AAS
>>892
おまえさん他言語への移植がどうたら言ってた?
696: 2021/10/18(月)09:00 ID:SjUVJOBm(4/7) AAS
C++でクラス作るなって
Cで関数作るなに匹敵するすげえ主張だな
最長不倒main関数とかw
697: 2021/10/18(月)10:44 ID:Qq+Ry0m8(1) AAS
Cだけやたら詳しくてクラスの仕組み知らないウン古参とか居るからな
698: 2021/10/18(月)11:01 ID:I7uU9DyP(1) AAS
MISRA-C 縛りの組み込み屋とかな
699(1): 2021/10/18(月)11:20 ID:PPwA/bGd(1/6) AAS
C++からCにソースコードを移植せざるを得ないことがあるから、Cプログラマでもクラスやテンプレートの知識は必須でしょ
700: 2021/10/18(月)11:27 ID:CHllzYZP(1) AAS
cの場合ファイルでクラスを実現するわけだけど、その縛りがある方がきれいになるよね
701: 2021/10/18(月)11:35 ID:cow76Y8p(1) AAS
twitterでCやC++を検索したい時、検索ボックスに
(C 言語) OR cplusplus OR cpp OR @i -@i lang:ja
と入れると割りといいことが分かった。
さらに、検索ボックスの右にある「…」のボタンを押して「検索を保存」しておくと、この検索文字列が勝手に消えない。
702: 2021/10/18(月)13:03 ID:nWV7c8cM(1) AAS
::fgetsってstd::getlineに対するメリットある?
703(1): 2021/10/18(月)13:40 ID:inWWc53E(1) AAS
getlineがそもそも遅くてダメ
fopenからのfread一択
704: 2021/10/18(月)15:14 ID:PPwA/bGd(2/6) AAS
$ man 3 getline
...
BUGS
There are no wide character versions of getdelim() or getline().
705: 2021/10/18(月)15:52 ID:r9t2S6+p(1) AAS
>>703
fread速くて素敵
706(1): 2021/10/18(月)15:58 ID:bmSCfWZq(1/2) AAS
fopen/fread/fseekだと2GBを超えるファイルが扱えないよね
707: 2021/10/18(月)16:22 ID:SjUVJOBm(5/7) AAS
2G超のファイルはもう珍しくもなくなったな
708(1): 2021/10/18(月)19:03 ID:PPwA/bGd(3/6) AAS
>>706
fread()は2GB制約なく扱えるのでは?
709: 2021/10/18(月)19:10 ID:SjUVJOBm(6/7) AAS
狭い視野でイキッてるヒヨッ子
710(2): 2021/10/18(月)19:38 ID:bmSCfWZq(2/2) AAS
>>708
環境によってはそういう実装もあるだろうけど、保証はされていないはず
実際MSVCのランタイムとかはダメでしょ
711(1): 2021/10/18(月)19:53 ID:wnQbvQnY(1) AAS
2GBってOSの制限じゃなくて?
712: 2021/10/18(月)19:56 ID:PPwA/bGd(4/6) AAS
>>710
「ダメでしょ」っていう無駄な煽り質問じゃなくて、fread()の制約について触れたブログのURLとか教えてもらえますか?
713(1): 2021/10/18(月)20:12 ID:SjUVJOBm(7/7) AAS
MSVCつってんだろ
そっから自分で調べろよ
714(1): 2021/10/18(月)20:19 ID:PPwA/bGd(5/6) AAS
>>713
見つからないンだわ
715: 2021/10/18(月)20:20 ID:q3S383yy(1) AAS
>>699
>C++からCにソースコードを移植せざるを得ないことがあるから、
いまどきそんなのある?思いつかない。
716(1): 2021/10/18(月)20:40 ID:guTQadjs(2/2) AAS
>>691
違うよファイル読み込み以外の場所での例外発生時にFILE*をリークさせないための設計の話だよ
君が何も考えてないのはよく分かった
717: 2021/10/18(月)20:48 ID:9/kwvMtE(1) AAS
>>711
今時のOSで2GBの壁とか無いでしょ
718: 2021/10/18(月)20:52 ID:PPwA/bGd(6/6) AAS
書いてから気づいたけど >>714 は、見つからねンだわ、のほうがよかった
719: 2021/10/19(火)00:01 ID:L2ZQN19z(1/11) AAS
MSVCのランタイムでfread()が2GB越えファイルを扱えないって話のURLはどこですか?
720(2): 2021/10/19(火)00:34 ID:FM0S3WDg(1/4) AAS
>>716
スコープを抜けたらファイルをクローズしてくれるから安全、と考える
藻前の考えが浅いのもまた明らかだ
システム的にファイルをぶち切られること自体が致命的だったら?
また、クローズがエラーになったとき何が起きるか
(ただクローズするだけのクラスならエラー通知先は無い。例外を飛ばしたら即パニック
というわけで実用的なリソースリーク対策はコードの追加を伴うから
fgets()にリーク対策するのと言うほど違いが無いワケ
721(4): 2021/10/19(火)00:41 ID:FM0S3WDg(2/4) AAS
例外安全はやれるならやった方が良いのは認めるが
他人様が作ったライブラリの中に生ポをメンバにもつクラスがあったら穴ができる
まだこれぐらいなら静的解析で発見できるかもしれんが
上で述べたようなcloseのエラーチェックのスキップとか循環参照とかは機械的検出が難しい
例外安全に予期せぬ事象が起きたときのセーフティーネット以上のことを気体するのはソフトウェア工学的ではない
というわけでやっぱfgets()を使いつつ例外を起こさないように書くのに比べて言うほどマシでないワケ
722(4): 2021/10/19(火)02:03 ID:2It6fcyB(1) AAS
君が例外安全というものについて何一つ知らない事はよく分かった
無知は罪じゃないから今から勉強し直そうね
知ってるふりしていい加減な付け焼き刃の知識を振りかざすのは恥ずかしいだけじゃなくてお客や同僚に迷惑を掛けるからね
723(1): 2021/10/19(火)02:48 ID:gI621CUN(1/5) AAS
コードや証拠もなしに噛み合わない話の空中戦とかするくらいなら反論しなくていいから黙ってよう
どちらが正しいかはみんな分かっているのだから
724: 2021/10/19(火)06:05 ID:KuG8Rhix(1) AAS
了解
725: 2021/10/19(火)06:18 ID:/lTW/4j8(1) AAS
cout << sizeof ftell(nullptr);
726(1): 2021/10/19(火)07:21 ID:N+EpsguK(1/3) AAS
自分で試す能力がなくてURL乞食しとんのか
727(1): 2021/10/19(火)07:46 ID:FM0S3WDg(3/4) AAS
馬鹿は正当性を定義も証明もできない事柄に正当性を見出してしまう好例
例外安全に予期せぬ事象が起きたときのセーフティーネット以上のことを気体できないというのが真実
それが証拠にいい加減でない知識として>>721以外の何があるのか>>722は示せていない
起こることが既知なら対処を平にコードに書けば良いのに
コードに明示されておらず、検証もしきれない実行パスをボコボコ作っといて安全と言い張る神経、
728: 2021/10/19(火)07:57 ID:FM0S3WDg(4/4) AAS
ていうか知能の問題かもしれん……
>どちらが正しいかはみんな分かっているのだから
衆愚の言い草
「何が」例外安全なのかきちんと定義してから出直してホスイ、
729(1): 2021/10/19(火)08:04 ID:N+EpsguK(2/3) AAS
暴れてるやつRAIIって発想もないようだしな
730: 2021/10/19(火)08:46 ID:T9srRJav(1) AAS
>>726
Windows環境自体がないのでは
731(2): 2021/10/19(火)08:51 ID:gI621CUN(2/5) AAS
5chは煽ると答えが返ってくるという都市伝説があるらしい
732(2): 2021/10/19(火)10:31 ID:L2ZQN19z(2/11) AAS
バグ報告する場合は再現条件を提示する責任がある
再現できなければ「おま環」で放置される
もしかしてこのスレの住人は、立民とか共産党の支持者だったりするの?
挙証責任って概念を知らないかな
モリカケ・桜を見る会問題にのめりこむような人は技術系の職業に向いてないから転職したほうがいいね
733: 2021/10/19(火)10:37 ID:JueBMEYA(1) AAS
最後の一文、それを断言できるのはその問題にのめりこんでる証拠のような・・・
734: 2021/10/19(火)10:38 ID:L2ZQN19z(3/11) AAS
お前は泥棒をしたのだから泥棒したことをお前自身が証明しろ、と言いがかりをつけ続ける取調官とか怖いだろ
それと同じことを一部の本スレ住人や立民共産信者は言ってるわけだよ
735: 2021/10/19(火)10:46 ID:ZI1Nh3C2(1/3) AAS
モリカケ・桜を見る会問題にのめりこんでいない人は
突然無関係のスレでモリカケ・桜を見る会問題の話題を出さないからね
常に意識している(のめりこんでいる)から技術系のスレで政治的な話をしてしまう
736: 2021/10/19(火)10:55 ID:L2ZQN19z(4/11) AAS
陰謀論など思い込みの激しい人は正義感でやってるから周囲の忠告に耳を貸さない
信者同士が共鳴しあうエコーチェンバー効果
737: 2021/10/19(火)11:12 ID:ZI1Nh3C2(2/3) AAS
「最近、この沼にはまって抜け出せなくなる人が多いんだよ、困ったものだね」と言いながら沼にはまっている人↑
738: 2021/10/19(火)11:22 ID:L2ZQN19z(5/11) AAS
MSVCでfread()が2GB以上のファイルを扱えないことを証明してくれさえすればいいんだよ、簡単だろ?
739: 2021/10/19(火)11:31 ID:L2ZQN19z(6/11) AAS
自分は雑なバグ報告しておいて、相手には執拗に問題解決を迫るキチガイとかイヤだろ?
740: 2021/10/19(火)11:40 ID:gI621CUN(3/5) AAS
そもそもfreadと何をどんな環境で比較して結果どうだったなどの証拠がない件
741: 2021/10/19(火)12:09 ID:ZI1Nh3C2(3/3) AAS
正直興味のない話なので関わらなきゃいいじゃんって言われるだろうけど
「相手には執拗に問題解決を迫るキチガイとかイヤだろ?」と行っている本人が「証明してくれさえすればいいんだ」と迫っているところを見る限り
やっぱり本人も沼に入っているのに気づいていないんだな、と感じる小雨が降る今日この頃
742: 2021/10/19(火)12:19 ID:L2ZQN19z(7/11) AAS
いまさら何言ってんだ?
このスレは、ダニング=クルーガー効果でイキったバカをからかうためのスレだぞ
743(1): 2021/10/19(火)12:35 ID:N+EpsguK(3/3) AAS
都合の悪いものは見えないらしいな
744: 2021/10/19(火)12:50 ID:gI621CUN(4/5) AAS
スレタイトルのとおりC++に関する相談をするためのスレですよ
ID:L2ZQN19z7 は他人を煽るためだけに書き込んでるように見えるので少し風当たりが強くなってるだけです
745: 2021/10/19(火)13:20 ID:L2ZQN19z(8/11) AAS
マイクロソフトのような大企業がfread()の致命的な不具合を永年にわたって野放しにするはずがないという常識や判断力すらない人は、いろんな陰謀論にハマるだろうね
ご本人はそれはそれで楽しい人生なんだろうけどIT技術者としてはどうかなって話
ま、反ワクチンの医者もごくまれにいるから、陰謀論にハマる人はどんな業界にもいるんだろう
746: 2021/10/19(火)13:25 ID:L2ZQN19z(9/11) AAS
ビル・ゲイツがワクチンの「狂った陰謀論」を改めて否定 | Forbes JAPAN
外部リンク:forbesjapan.com
2021/01/28 12:30
マイクロソフトの共同創業者でビリオネアのビル・ゲイツは、パンデミックを受けてSNS上で拡散した、彼に関する陰謀論の多さに「非常に驚いている」と述べ、ワクチンの普及の妨げになりかねない誤情報への懸念を示した。
ゲイツは1月27日のロイターの取材に、彼と米国のコロナ対策のトップであるアンソニー・ファウチ博士についての「狂った陰謀論」は、パンデミックに対する恐怖心とソーシャルメディアの台頭により引き起こされた可能性が高いと述べた。
パンデミックに関する最も目を引く陰謀論のいくつかは、ゲイツが「世界の人々にマイクロチップを埋め込むためにワクチンを活用しようとしている」という、根拠のない主張に基づいている。
ゲイツは、人々が本当にこれらの陰謀論を信じているのかどうかを知りたいと話した。「それは、人々の行動をどのように変えるのだろう? そして、我々はどのようにして、これを最小限に抑えるべきだったのだろう?」と、彼は問いかけた。
747: 2021/10/19(火)13:25 ID:4nkSMT7f(1) AAS
Microsoft、不具合修正一年くらいかかったよ
748: 2021/10/19(火)13:53 ID:emsejTNf(1) AAS
MSは直らんなあ
google よりはマシかもな
749: 2021/10/19(火)15:13 ID:gI621CUN(5/5) AAS
単発IDは自演の可能性ありますね
750: 2021/10/19(火)19:19 ID:GtxXqLyf(1/4) AAS
2000年ごろのLinuxユーザーなら、ゲイツがワクチンにウィルス仕込んでると大騒ぎしてただろうけどな。
751: 2021/10/19(火)19:24 ID:GtxXqLyf(2/4) AAS
>>732
ご指摘の動作は弊社ソフトウェア製品の問題点であることが確認されました。
引き続き調査を行います。
進展状況はID2273405でご確認できます。
今後も弊社製品ご愛顧のほどよろしくお願いします。
752(1): 2021/10/19(火)19:28 ID:GtxXqLyf(3/4) AAS
>>732
「証拠はあんのか?おお〜ん?」と言ってる晋三が暴力団に見える。
証拠がなくたって傍目に明らか。
なんで5000円でスイートに泊まれるわけない。
嘘つかずにごめんなさいしたら良かっただけ。
753(1): 2021/10/19(火)19:52 ID:L2ZQN19z(10/11) AAS
>>752
5Gにつながるためにもちゃんとワクチン2回打てよ
11月になったらワクチン接種会場がさらに減るぞ
上下前次1-新書関写板覧索設栞歴
あと 249 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.191s*