- 1 名前:デフォルトの名無しさん mailto:sage [2021/08/09(月) 10:57:31.60 ID:JaaB5Egp.net]
- 前スレ
C++相談室 part156 https://mevius.5ch.net/test/read.cgi/tech/1621389313/
- 577 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 10:22:18.86 ID:T3qmZxdk.net]
- >>560
Bを受け付けるfunctionを書くんや
- 578 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 10:50:11.05 ID:QW1mycSW.net]
- B extends A
としたら function の引数をキャスト?で動かない?
- 579 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 10:54:01.94 ID:RUUSz/4T.net]
- 簡単や
template<class A> int function(A aaa);
- 580 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 12:11:05.48 ID:F+cmXQty.net]
- できました。ありがとうございます。
また、ポインタのvectorを実体として使うにはどうすればよいでしょうか? std::vector<A*> で定義されてるものを、 std::vector<A>として使いたいです。 別のvectorにポインタ値を詰め直せばいけると思うのですが、元のポインタの場所のまま実体で使いたいです。無理でしょうか。
- 581 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 12:31:51.97 ID:T3qmZxdk.net]
-
- 582 名前:参照を使うんや []
- [ここ壊れてます]
- 583 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 13:03:47.84 ID:NaSXzxBw.net]
- 参照のvectorなんて作れたっけ?
- 584 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 13:16:00.26 ID:T3qmZxdk.net]
- reference_wrapper使うんや
まあ下らんこと考えんほうがええ
- 585 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 17:28:01.69 ID:0Mn4AOx6.net]
- >>564
ややこしい所有権・所有責任問題が発生するから、ソースコードを見直したほうがいい。 具体的にはstd::vector<*A>を std::vector<std::shared_ptr<A>> にして、shared_ptr<A>をやり取りするようにすべきだな。 性能問題とか互換問題とかでも無ければvector<*A>なんて使うもんじゃない。
- 586 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 20:43:04.76 ID:bPHZE8G4.net]
- 言ってることは同意だが、ポインタの型もまともに書けないような人に言われても説得力がない
- 587 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 20:47:36.58 ID:c9XBGwkD.net]
- Rustと間違えたんじゃね
- 588 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 22:25:40.15 ID:RUUSz/4T.net]
- 簡単や
std::vector<std::shared_ptr<A>>
- 589 名前:デフォルトの名無しさん mailto:sage [2021/10/11(月) 23:13:38.91 ID:9gfKW03X.net]
- ドラクエ3のバージョン違いの謎に迫る!
https://www.youtube.com/watch?v=sh5GXYs6T1c 2021/10/01に公開済み FC版DQ3には、AバージョンとBバージョンが存在する 今回はROM内のプログラムを徹底比較! どこが違うのか白黒ハッキリさせると息巻いた内藤プロ 当時自分が作ったのに全て忘れてて大変なことに・・
- 590 名前:デフォルトの名無しさん [2021/10/12(火) 04:13:48.50 ID:jMkI4z1q.net]
- ぶっちゃけ継承とかポリモフィズムはオワコンでテンプレート最強?
- 591 名前:はちみつ餃子 mailto:sage [2021/10/12(火) 04:25:26.30 ID:WB1ScBpO.net]
- >>573
過去の C++ の流行においては継承が強調されすぎたこともあって 継承の害悪な面も見えて大幅な揺り戻しは有った。 しかしそれぞれに役割があるのでどれかが廃れるとかいう話ではない。 バランスとしては継承が控えめになったけれど、だからといって継承のない C++ はありえない。 結局のところそれぞれを適切に使えというだけのこと。
- 592 名前:デフォルトの名無しさん mailto:sage [2021/10/12(火) 06:45:14.85 ID:LoAbYEbi.net]
- 継承が有効に使われている事例をひとつも知らないヒヨっ子丸出しな質問だな
テンプレートの何がいいのかもわかってなさそう
- 593 名前:デフォルトの名無しさん mailto:sage [2021/10/12(火) 07:03:36.18 ID:bL2VfUhD.net]
- CRTPとか見たら脳を壊しそう
- 594 名前:デフォルトの名無しさん mailto:sage [2021/10/12(火) 07:24:36.11 ID:+oJUuDWk.net]
- >>576
virtual使えないor使わない処理系で、使ってみたけど確かに頭にスッキリ入らんパターンだわw あれはあれでポイントで使うと便利だし、反対にやっぱvirtualも便利でいいよねーとか。
- 595 名前:デフォルトの名無しさん mailto:sage [2021/10/12(火) 08:16:42.08 ID:4AIb2U7h.net]
- >>573
メソッド共通化を実現するための継承はオワコン。 プレースホルダーを用意するための継承は現役。 総称型が実装されれば継承自体をオワコンにできそうな気がするけど、総称型風スマートポインタて無かったっけ?
- 596 名前:デフォルトの名無しさん mailto:sage [2021/10/12(火) 08:20:36.96 ID:vDVhyOYS.net]
- 耳が腐る
- 597 名前:デフォルトの名無しさん mailto:sage [2021/10/12(火) 09:51:23.11 ID:kjIGaWla.net]
- 何でこんな荒れてんの?
- 598 名前:デフォルトの名無しさん mailto:sage [2021/10/12(火) 10:09:23.54 ID:qN1bonoC.net]
- いつものこと
- 599 名前:デフォルトの名無しさん mailto:sage [2021/10/12(火) 10:40:17.54 ID:kjIGaWla.net]
- 単発荒らしか
- 600 名前:デフォルトの名無しさん mailto:sage [2021/10/13(水) 04:27:45.44 ID:yxtzEQdj.net]
- void * の生ポが最強
- 601 名前:デフォルトの名無しさん mailto:sage [2021/10/13(水) 07:29:48.53 ID:w2mbz/VV.net]
- ○○なんていらねーよ害悪だけだ
まだ使ってるやつは全員バカ これからは△△を使うべきだ なーんて言っちゃってマウント取った気になってるおめでたいやつ メガトン級にアホにされてることに気付かねえよな
- 602 名前:デフォルトの名無しさん [2021/10/13(水) 09:41:39.46 ID:V99uCirA.net]
- vector を shuffle する場合について質問です(gcc/windows10でテスト)
vector<int> vec(50, 0); for(int i = 0; i < 10; ++i) vec[i] = 1; random_device dev_seed; mt19937_64 mt(dev_seed()); shuffle(vec.begin(), vec.end(), mt); で確かに shuffle されているのですが疑問点がいくつかあります 1.dev_seed()が毎回同じ値を返してる? (random_deviceの使い方を間違えてる?) 2.先頭の値が1に偏ってる? (shuffle() を数回繰り返す解決方法もあるようですがあまり気持ち良くないです) 3.そもそもforで先頭の方に1を入れる発想が良くない? (shuffleされてるならこれは関係無いと思いたい)
- 603 名前:デフォルトの名無しさん [2021/10/13(水) 09:47:25.08 ID:V99uCirA.net]
- ああこれか
https://cpprefjp.github.io/reference/random/random_device.html >GCC (MinGW): GCC 9.1までは擬似乱数生成器 mt19937 を用いるため使用を推奨しない。詳細は備考欄を参照。GCC 9.2からは暗号論的な乱数である rand_s を使用する。
- 604 名前:デフォルトの名無しさん mailto:sage [2021/10/13(水) 10:51:16.02 ID:ocY7/s3a.net]
- 偏りを判断する目が偏ってるのでは
- 605 名前:デフォルトの名無しさん mailto:sage [2021/10/13(水) 12:39:29.13 ID:L2HfUVD6.net]
- random_deviceがダメな環境でrdtsc命令使ったことあるな
良いやり方かは知らん
- 606 名前:デフォルトの名無しさん mailto:sage [2021/10/13(水) 16:09:05.50 ID:SuRXriSW.net]
- https://cpprefjp.github.io/ って
https://ja.cppreference.com/ があるのになんで使われてるの?
- 607 名前:はちみつ餃子 mailto:sage [2021/10/13(水) 16:23:55.69 ID:6cp7j/AO.net]
- >>589
前者は編集者による解説なども含んでいて仕様の意図や習慣がわかりやすい。 実装の現実みたいな補足もあるし。 後者は仕様書の再編を指向してるから正確だけど規則の羅列を読むのがしんどいこともある。 適宜使い分けて。
- 608 名前:デフォルトの名無しさん mailto:sage [2021/10/13(水) 16:49:55.63 ID:SuRXriSW.net]
- >>590
ありがとう
- 609 名前:デフォルトの名無しさん mailto:sage [2021/10/14(木) 00:25:54.44 ID:unU20Liw.net]
- 逆にjaはほぼ見ないな
cpprefjpかen
- 610 名前:デフォルトの名無しさん [2021/10/14(木) 17:38:44.33 ID:0xmYH4RJ.net]
- みんなで広げよう友達の輪
https://github.com/cpprefjp/cpprefjp.github.io
- 611 名前:デフォルトの名無しさん [2021/10/14(木) 19:08:30.88 ID:D5VUtH01.net]
- 今までJavaでやってきたけどC++もやってみたいんだよね
すぐ出来るようになると思う?
- 612 名前:デフォルトの名無しさん mailto:sage [2021/10/14(木) 19:10:28.43 ID:u3valL3D.net]
- >>594
ならない C言語のポインタや文字列について勉強したほうがいい
- 613 名前:デフォルトの名無しさん mailto:sage [2021/10/14(木) 19:12:47.65 ID:pMO89bX6.net]
- >>594
c++でちょっとした文字列パースして内容に応じたオブジェクト構築する処理書いてたの、 ほぼ使ったことないJavaに移植したらスゲー早く出来てワロタ。C#もサクサクできたな〜 逆は色々イラッとするんじゃねぇかな?
- 614 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 01:29:52.42 ID:oSpeFu2A.net]
- 元々C++はその辺の文字列処理を毎回1からゴリゴリ書くような言語じゃなくて何らかのライブラリを利用するものだと思うけど、
クロスプラットフォームで各種文字コードが自由に扱えて、c++11以降の仕様に対応してて、かつかゆいところに手の届くライブラリって意外とないんだよね いや、俺が知らないだけかもしらんけどw
- 615 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 05:56:29.15 ID:JZ8LRo6T.net]
- 実質的な標準と呼べるものは今もないよ
- 616 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 09:26:39.59 ID:c8xS1fS2.net]
- >>596
std::regex使ってようやっと、かね。 c++はいつまでたっても文字列処理苦手なままだわ。
- 617 名前:デフォルトの名無しさん [2021/10/15(金) 10:21:28.25 ID:Sjupi756.net]
- Javaから入ると不能(陰ポ)になる
もう手遅れ
- 618 名前:デフォルトの名無しさん [2021/10/15(金) 10:22:26.59 ID:Sjupi756.net]
- >>597
wxWidgets
- 619 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 10:26:50.27 ID:Eg3Mb3n8.net]
- あれ出来上がるバイナリ重すぎなんだけど、今は違ったりするのかね
- 620 名前:デフォルトの名無しさん [2021/10/15(金) 11:49:16.16 ID:Sjupi756.net]
- Debugだとバカデカくなるけど
Releaseは気にならないレベル (DLL除く)
- 621 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 11:53:45.11 ID:JZ8LRo6T.net]
- std::regexと等価なインターフェースを各々の正規表現ベンダーが用意してくれればいいんだが、それすら実現されていないお寒い状況
- 622 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 12:03:59.88 ID:XHojpqKh.net]
- >>599
その辺も無いわけじゃないんだけど、クラスの構造どうしようかとか、メモリ管理どうするかとか、 変態trmplateでパズルしてみようかとか、選択肢多い分考えることも多い部分で時間かけることが 多い所はあるなーって。それがC++使いたい動機の裏返しでもあるんだけど。 あと本人の問題120%だが、ボケて油断してると、エラー直すのにやたら時間かかったりで。 Javaとか詳しく知らん状態だから言えるのかもしれんけど、もうこうするしかネェってレールが 最初からあるような印象でした。つかオラクルのライセンス問題のほうがムズいw
- 623 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 12:19:11.94 ID:Q47teFml.net]
- 等価って図々しいだろ
- 624 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 12:34:03.36 ID:Ax3dDCZ3.net]
- std::regexみたいな文字コードというものがあることを知らない人間が作ってそうなものを標準だと思ってつかうのはやめたほうがいいと思います
- 625 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 12:53:35.21 ID:JZ8LRo6T.net]
- char8_tが導入されたんだからutf-8しばりでいいじゃない
- 626 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 13:14:36.67 ID:x+xcCYcO.net]
- なんか最近曖昧な上に突っ込む点多すぎる内容的にはどうでもいい話題が多くない?
- 627 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 13:33:42.62 ID:ma4A3Lrr.net]
- >>607
utf8限定ならそこそこ。 もうutf8がデファクトだから、内部処理はutf8に統一した方がいいよ。
- 628 名前:ハノン mailto:sage [2021/10/15(金) 19:29:27.64 ID:0K4QrynR.net]
- >>608
内部コードは utf-32 でやっているので、utf-32 縛りのほうがうれしいです‥
- 629 名前:デフォルトの名無しさん [2021/10/15(金) 19:56:39.74 ID:JZ8LRo6T.net]
- >>611
はぁ? std:::basic_regex<char8_t>、std::basic_:regex<char16_t>, std:::basic_regex<char32_t> のどれでも好きなの使えばいいじゃん
- 630 名前:デフォルトの名無しさん [2021/10/15(金) 20:01:47.12 ID:JZ8LRo6T.net]
- ところで、char16_t、char32_tってエンディアンはシステム依存しばり?
- 631 名前:デフォルトの名無しさん [2021/10/15(金) 20:03:20.51 ID:eqKsqNtm.net]
- ちなみに、いま使えるみたいですよ。
むかしは使えることになってるのに実際は使えなかったんだけど。 自作イテレーターにも対応してるようです。 アップルは知らんけど。 Ubuntu+gcc、Windows10+clでは自作イテレータでstd::regex<>が使えました。 これは、HTML、XML、JSONのデータ構造からコンテンツ内のみを検索のような事に使えます。 標準から外れるような議論もあるそうですが、便利なので外れないように抗議していきましょう。
- 632 名前:デフォルトの名無しさん [2021/10/15(金) 20:12:21.03 ID:eqKsqNtm.net]
- C++20でchar8_tが入ると便利になりますよね。
- 633 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 20:12:58.12 ID:Q47teFml.net]
- >>613
規定しない なのでそういうのはそこでは気にしない
- 634 名前:デフォルトの名無しさん [2021/10/15(金) 20:35:46.40 ID:eqKsqNtm.net]
- STLはセントルイスの略。
では、GCCは何処でしょう?
- 635 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 20:50:28.66 ID:R98eOYn2.net]
- つまんね
- 636 名前:デフォルトの名無しさん [2021/10/15(金) 21:40:43.65 ID:HBylJ5Wv.net]
- 平面3リンクマニュピュレータの逆運動学のプログラミングが分かりません。
キーボードで手先の位置を入力すると、関節角が表示されるようにしたいです。 scanfを使うのと、アームの長さなどは適当に決めていいという条件です。 わかる方いたら、送って欲しいです。
- 637 名前:デフォルトの名無しさん mailto:sage [2021/10/15(金) 22:21:16.57 ID:fUsvamq4.net]
- >>619
どこの大学のなんていう授業か教えてくれたら送ってあげる
- 638 名前:デフォルトの名無しさん [2021/10/15(金) 22:41:19.44 ID:HBylJ5Wv.net]
- 大した大学ではないです。ロボット工学です。
- 639 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 10:16:02.78 ID:pBeCkfuy.net]
- >>619
冗長マニピュレータで一意に求まらん。制約条件設けてるはずだが。
- 640 名前:デフォルトの名無しさん [2021/10/16(土) 11:55:15.40 ID:NekA8urB.net]
- >>622
リンクの長さは良さそうな値を定義してください。関節の座標はこちらで決めずにあくまでも手先の位置・姿勢であるxed、yed、φedから計算で出します。解が複数出てくるので、全ての候補を求めてください。 例えば、リンクの長さは根元から順に0.3m、0.3m、0.05mなどで良いです。 プログラムとしては手先の目標値を入力して、θ1、θ2、θ3が出力されればOKです。
- 641 名前:デフォルトの名無しさん [2021/10/16(土) 12:05:17.39 ID:NekA8urB.net]
- >>622
目標値は、x=0 y=0.3m φ=90degがいいと思います。先ほどのリンクの長さの設定値で楽な姿勢でロボットの手が届く範囲ですので。
- 642 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 12:08:52.99 ID:pBeCkfuy.net]
- >>623
手の姿勢まで指定してて >>619 と違う問題になってんじゃん。どんなテキストにも解法載ってる問題丸投げしてんだな。
- 643 名前:デフォルトの名無しさん [2021/10/16(土) 12:14:57.04 ID:NekA8urB.net]
- >>625
テキストに載ってないからここで質問してるんですよ。手の姿勢は例えばの話ですよ。どっちみちscanfで入力するんですから。
- 644 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 12:22:50.77 ID:pBeCkfuy.net]
- >>626
問題が違うっつうの。 ロボット工学のテキストには必ず載ってる。よく読めアホ。
- 645 名前:デフォルトの名無しさん [2021/10/16(土) 12:35:46.33 ID:NekA8urB.net]
- >>627
日本語分かる?プログラムは載ってないから。教科書に載ってるから見ろって丸投げしてんのどっちだよ。
- 646 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 13:20:33.97 ID:N8k1BZc2.net]
- >>628
お前だよどう考えても
- 647 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 13:59:18.07 ID:Ilt9CI+j.net]
- 答える価値がないと思うなら放置しろよ
くだらねえ煽りやってんな迷惑だ
- 648 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 21:12:30.56 ID:pBeCkfuy.net]
- >>628
プログラムが載ってるわけねえだろ、アホ。 載ってんのは**解法**(>>625)
- 649 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 21:15:24.70 ID:1x8IpOH2.net]
- > どっちみちscanfで入力するんですから。
このレガシーさには誰も何も思わんの?笑
- 650 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 21:21:35.71 ID:gJanIysk.net]
- ssfanf_s()を使った方が(%sとかについて)ちょっと安全
- 651 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 21:31:10.24 ID:ex7yhveJ.net]
- 安全性の話じゃねえだろ
- 652 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 21:53:50.46 ID:EatL4YvD.net]
- わざわざC++なんか使っときながら勉強不足でモロアンチパターン踏んでるバカ
よくいるよね
- 653 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 22:09:18.72 ID:n5lzAHDj.net]
- どういうの?
- 654 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 23:14:18.41 ID:gJanIysk.net]
- やっぱ普通fgets()して1行全体を読み込んでからstrtok_s()使いマスヨネー
- 655 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 23:16:29.16 ID:gJanIysk.net]
- 文字列の数値化はstrtol()、strtoul()、strtof()、strtod()をオーバーロードしたwrapper関数を呼ぶテンプレートにすれば
cinと同等の型安全性と同等以上の使い勝手が実現にできるし、
- 656 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 23:41:33.15 ID:VgkITY1O.net]
- C++な人ってゴリゴリ自分でBNF的なparser combinator書くイメージだな
わざわざcstring使う人はいない気がする
- 657 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 23:45:41.19 ID:gJanIysk.net]
- いろんな人の手を経たプロジェクトだと CString(Windows) と std::string
(ていうか正確にはstd::basic_string<TCHAR>)が混在しがちなのがほんのちょっと悩みどころ
- 658 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 23:46:44.02 ID:VgkITY1O.net]
- えーっと・・・cstringはC言語のstring.hのことだよ
- 659 名前:デフォルトの名無しさん mailto:sage [2021/10/16(土) 23:53:12.21 ID:gJanIysk.net]
- しらそん
いちいち #ifdef __clusplus # include <cstring> # include <cmath> #else # include <string.h> # include <math.h> #endif みたいな書き方するん会、
- 660 名前:デフォルトの名無しさん [2021/10/16(土) 23:54:09.02 ID:6ga3nra2.net]
- json文字列として入力データを受け取って既存のjsonライブラリでパースするのが無難じゃないですかね
- 661 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 09:22:32.00 ID:4Zt4uwKf.net]
- C++でfgets使うアホの世界チャンピオンがいるな
- 662 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 09:40:16.91 ID:Rn6uB4uI.net]
- 壊れても居ないものを直そうとするヴァカに言われたくはないし、
行の長さが定まっていないみたいなアフォな外部データ設計でない限り fgets()で軽くて十分
- 663 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 09:48:08.24 ID:4Zt4uwKf.net]
- 直すって何を?
ああ、おまえさんの頭か
- 664 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 11:05:04.47 ID:cds0CTiX.net]
- 今ならメモリ不足とか気にする必要はほぼないから、
fgets()よりも、テキストファイル全体を一気に読み込んで1行分をstring_viewで返していく、みたいな流れの処理の方が効率は良いはずだよね
- 665 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 11:06:37.70 ID:XrR+wpGu.net]
- MSVCのfgetc()とfgets()は実行速度が遅い
- 666 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 11:19:23.83 ID:Rn6uB4uI.net]
- >>646
ちゃうちゃう、目新しいという以外にメリットも無いのに飛びつく誰かさんの方 >>647 行の長さが定まっていない仕様というのは大変恐ろしいことでありまして、 40TBの入力も許容するという意思表明なのであります
- 667 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 11:23:35.72 ID:XyIQiUpb.net]
- どれもこれもザックリすぎて話にならない
- 668 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 11:24:11.36 ID:Rn6uB4uI.net]
- こと外部データに関しては、読み込み終えないとサイズがわからない、みたいな仕様は悪手
で、異常な入力に対してエラー出力するプログラムは正しいが クラッシュするのはバグ という観点からすると、動的メモリ確保による不定長読み込みができると言っても活かしようが無く、 結局fgets()でいいやん?となる
- 669 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 11:27:15.30 ID:XyIQiUpb.net]
- fgets使うくらいならOS固有の関数を呼ぶべきだと思う
readとかReadFileのことね
- 670 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 11:30:16.75 ID:Rn6uB4uI.net]
- >>652
バッファリングを自力で実装するんか…… デバイスドライバ側である程度何とかしてくれるケースもあるかもしれんが
- 671 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 11:30:46.37 ID:0m7FLjXf.net]
- >>652
ええ…
- 672 名前:デフォルトの名無しさん [2021/10/17(日) 11:47:07.94 ID:XrR+wpGu.net]
- 真理情報:fgets()はUTF-16やUTF-32のテキストファイルを正しく読み込めない
- 673 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 12:13:01.70 ID:0m7FLjXf.net]
- ワイド文字用の関数は使っちゃだめということ?
まあ使い方よくわからんけど
- 674 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 12:16:45.02 ID:XrR+wpGu.net]
- HTMLなりXMLなりJSONなりそれぞれパーサーがすでにあるのだからその恩恵を享受するのがナウなヤングの取るべき道でしょ
- 675 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 12:21:07.90 ID:4Zt4uwKf.net]
- >>652
俺ならCreateFileMappingを使う fgetsなんて頭の更新が止まった昭和時代の
- 676 名前:サ石のうちでも地頭までひどいやつの使うものだな []
- [ここ壊れてます]
- 677 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 12:21:44.62 ID:cds0CTiX.net]
- >>656
ワイド文字は環境によってUTF16だったりUTF32だったりで仕様が定まらないので使いにくい
|

|