- 1 名前:デフォルトの名無しさん(ワッチョイ 3b96-ov1m) mailto:sage [2017/07/29(土) 11:28:28.97 ID:o30VDF4g0.net]
- 次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512 C++に関する質問やら話題やらはこちらへどうぞ。 ただし質問の前にはFAQに一通り目を通してください。 IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。 前スレ C++相談室 part130 mevius.2ch.net/test/read.cgi/tech/1490917669/ このスレもよろしくね。 【初心者歓迎】C/C++室 Ver.100【環境依存OK】 echo.2ch.net/test/read.cgi/tech/1478440682/ ■長いソースを貼るときはここへ。■ codepad.org/ https://ideone.com/ [C++ FAQ] https://isocpp.org/wiki/faq/ www.bohyoh.com/CandCPP/FAQ/ (日本語) - VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
- 829 名前:デフォルトの名無しさん [2017/09/27(水) 11:12:43.27 ID:LyDwKMB00.net]
- 驚いた、ム板にIP信者がいるとはね
嘆かわしい限りだ
- 830 名前:デフォルトの名無しさん mailto:sage [2017/09/27(水) 11:41:32.93 ID:/eBNIii1d.net]
- >>800
だったら>>771をターゲットにすればよかったんだよ お前は>>770をも貶し続けていると見なされていたんだよ
- 831 名前:デフォルトの名無しさん mailto:sage [2017/09/27(水) 11:42:15.16 ID:/eBNIii1d.net]
- >>808
間違えた、逆だ []- [ここ壊れてます]
- 833 名前:デフォルトの名無しさん [2017/09/27(水) 14:47:33.57 ID:LyDwKMB00.net]
- 大ボケ+言い訳+IP信者+錯乱
この安定したアフォぶりは、どう見ても同一人物だなw
- 834 名前:デフォルトの名無しさん [2017/09/29(金) 01:30:30.30 ID:ppl3WHHK0.net]
- %%%3%%%
000-DOK<NAZE-0.8112162> 001-3800%\73NMB/1,81,2,NB"IKKI"% 002-91.81%ML7"8.122231746668193,43@ML.4@"%^23.1444 003-1.33321444718%"YLD""SO"%{71.%{62.1339816{331.422231765%<<<NL6 004-LOOP%Go To"000"% VCL
- 835 名前:デフォルトの名無しさん mailto:sage [2017/09/29(金) 22:15:16.68 ID:7WUGaaf40.net]
- javaやc#しかやったことないような人間がc++でもメモリ管理をきちんと身につけるには何から始めるのが手っ取り早いでしょう?
- 836 名前:デフォルトの名無しさん mailto:sage [2017/09/29(金) 23:55:16.07 ID:7WUGaaf40.net]
- そもそもみんなc++で何してるの?🤔
- 837 名前:デフォルトの名無しさん mailto:sage [2017/09/30(土) 00:49:06.72 ID:Yf3yOiqk0.net]
- 人工知能ゥ・・・
- 838 名前:はちみつ餃子 mailto:sage [2017/09/30(土) 00:56:27.58 ID:H54Xn+Px0.net]
- >>812
C++ ではなるべくスマートポインタを使って自動化すべきなんだけど、 その内側にあるメモリの気持ちを実感として持つには C の範囲で色々やってみるのもいいかな。
- 839 名前:デフォルトの名無しさん mailto:sage [2017/09/30(土) 01:18:37.51 ID:bL0j7tMv0.net]
- >>812-813
JavaやC#が選択肢になる状況でC++を選択する理由はない。 今C++を何に使うか決まってないのなら、JavaやC#を極める方向に努力した方がいい。
- 840 名前:デフォルトの名無しさん mailto:sage [2017/09/30(土) 01:39:01.97 ID:zjlhf9G/0.net]
- VisualStudioでMFCのSDIテンプレートを作ると、ドキュメントクラス、ビュークラス、アプリケーションクラス、メインフレームクラスができますが、
これらのポインタを初期化時にグローバル化しておいて、以後あらゆるクラスから気軽にアクセスできるようにしとくのは良くないんでしょうか? グローバル変数はあまり使うべきではないという考えは置いておくとして、動作上問題は起こるのでしょうか?
- 841 名前:デフォルトの名無しさん mailto:sage [2017/09/30(土) 09:54:39.91 ID:1M7A4t/A0.net]
- まあたまには口ですることもあるかな…
- 842 名前:デフォルトの名無しさん mailto:sage [2017/09/30(土) 16:24:19.18 ID:EIEZdyCfd.net]
- 問題が起こらないように作れば起こらない
としか言えない
- 843 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 00:09:52.37 ID:A+1idbvt0.net]
- MFCのtheAppには100万回ぶち切れてきたけど動作上は特に問題は無い
- 844 名前:デフォルトの名無しさん [2017/10/01(日) 04:08:21.65 ID:EFR2vscz0.net]
- あーこの人、こうやっちゃったんだ(ニヤニヤ
しながら使うもの ARM C++ベースなんで同情するところもあるけどね
- 845 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 11:18:29.65 ID:coFT7XLp0.net]
- グローバル変数だからといって頭ごなしにぶち切れるのもいかがなものか…
CPU視点でやるべきことに対して処理順序にあいまいさが生じないなら実行上問題無いし、 プログラマーの視点で管理できる個数なら実用上も問題無い 同一クラスの複数インスタンスが欲しければグローバルな配列にしたらやり過ごせる ていうか仮にtheAppを根とする木構造で全てのデータを管理することを思い立ったとして、 その木の根付近をぶち切って得た2〜3の大枝をグローバル変数を根とするそれぞれ別の木にする、ぐらいの 挿し木設計は設計上のショートカットとして許されるべきや というのは、プログラムのあらゆる箇所で theApp()->getMemberA()->getMemberAA()->getMemberAAA()->...->getMemberZZ()->getValue() と書かねばならなかったものが、 g_dataAA->...->getMemberZZ()->getValue() ぐらいで済む
- 846 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 12:31:41.44 ID:A+1idbvt0.net]
- 平気でグローバル変数を使う奴はtheAppの混じったコードを使いまわし続けて大量にデータを持たせるようになる
そして結合しまくりのクラスを他のソフトにコピペしていつのまにか神theAppができある マルチスレッドで読み書きしてるもんだから予想外のバグが起こる 上司はそれでそれが当たり前だと思ってるから同じようにしろと俺に命令する 俺切れる
- 847 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 12:47:25.61 ID:coFT7XLp0.net]
- >マルチスレッドで読み書きしてるもんだから予想外のバグが起こる
これはグローバル変数でなくとも起きる設計なら起きるから別件 ていうか >CPU視点でやるべきことに対して処理順序にあいまいさが生じ(>>822) ているケースにあたる 非同期呼び出しの同期化は呼び出される側のクラスで解決すべき、というだけ メソッド内で完結できれば最も安全 パホーマンスや処理の粒度の関係でそれが適さない場合は トランザクション処理をちゃんと設計汁、
- 848 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 12:50:48.09 ID:+enXMbbO0.net]
- >>823
アプリケーションの中で寿命の長いデータはどこにどうやって置いてるの?
- 849 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 14:12:37.21 ID:A+1idbvt0.net]
- >>824
ちょっと足りなかったわ マルチスレッドでかつ複数のクラスを跨って別々の場所で読み書きされているからいつどこで変更されるかわからないことが多々ある そうなるとあちらを立てればこちらが立たずといった感じになり、きれいに書く気力が失われてさらに汚さが加速する >>825 必要なデータだけを引数で与えるべき
- 850 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 14:15:44.38 ID:P+J8m3XL0.net]
- グローバル変数で同期とるんじゃないぞ。そんなもので同期なんて取れないからな。
ちゃんとOSが提供する同期オブジェクト使えよ。
- 851 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 14:17:42.21 ID:LFbo+6zld.net]
- どんな環境でもOSがあってしっかりした同期の仕組みが有るとか思ってるお花畑がいると聞いて
- 852 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 14:25:15.04 ID:P+J8m3XL0.net]
- いやはや無知で申し訳ない。
マルチスレッド機能があって同期の仕組みが提供されない処理系があるならばご教授して頂きたい。
- 853 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 14:59:48.84 ID:8m985+fI0.net]
- 文脈上Windowsでの話なのははっきりしてるのに「どんな環境でも」とか
- 854 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 15:20:08.45 ID:+enXMbbO0.net]
- >>826
>必要なデータだけを引数で与えるべき 引数を渡す側がそのデータをどこにどうやって保持すればいいのか、という問題が残るだけでは?
- 855 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 15:35:52.14 ID:7TdPvZgo0.net]
- >>831
> 引数を渡す側がそのデータをどこにどうやって保持すればいいのか、という問題が残るだけでは? 再帰的にたどって行けばいいだけかと プログラムの寿命とほぼ同じ寿命が必要ならmain( )で定義することになるだろうし
- 856 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 15:38:17.18 ID:P+J8m3XL0.net]
- どうしてもグローバル的なものがほしいなら、グローバルにしてしまえよ。
アクセス用の関数だけしっかり同期処理書けばいい。
- 857 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 15:41:47.38 ID:coFT7XLp0.net]
- んまーマルチスレッド機能有りのOSであり
(1) OSがプリエンプトしてくるのを止めるAPIが無い (2) ユーザープログラム独自に割り込み禁止命令を実行できない(特権命令違反でトラップされる としたらユーザー側ではフラグのread modify writeのアトミック性を保証する術がまるきり無くなる
- 858 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 15:43:55.69 ID:coFT7XLp0.net]
- いやすまん下記も追加
(3) interlock系の命令が使えない(特権命令違反か何かでトラップされる (3)は使えるかな普通… >>829のは杞憂かもしれんな…
- 859 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 15:51:28.11 ID:coFT7XLp0.net]
- しかしまあ同期処理はOSが提供すべき(理念としてだけでなく、その方が効率よく実現できるから
というのは同意 マルチスレッド機能があるOSなら必ずプリエンプトされないコード範囲を持つので、そこでなら interlock系の命令を持たないZ-80みたいなCPUでも何も問題なくアトミックなread-modify-writeができる、
- 860 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 15:52:05.08 ID:7TdPvZgo0.net]
- >>834-835
Compare-And-Swapとかの命令が特権命令になってるプロセッサなんてあるんだっけ?
- 861 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 15:59:29.84 ID:coFT7XLp0.net]
- >>837
Interlock系命令の意味で言った 正しい言葉使いかは知らん…!
- 862 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 16:05:24.82 ID:a+6SxdIf0.net]
- atomicなread及びwriteが使えるならmutexを構成できるし、それを利用すればread modify writeも可能だよ。
- 863 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 17:15:48.85 ID:zBOS+jx9M.net]
- ミューテックスが何だって?
くだらねえ話しやがって・・
- 864 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 17:18:14.77 ID:A+1idbvt0.net]
- >>831
どんどん上にたどっていく そのデータを管理しなければいけないクラスあるいはmain関数が保持すればいい externした変数はそのクラスが所有権を持っていることと同等なので、パフォーマンス上の都合が無ければ極力共有は避けるべき あとコードを使いまわすときにも障害になる ファイルにまとめて他でincludeしてもそのまま使えない
- 865 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 17:46:49.19 ID:+enXMbbO0.net]
- >>841
>そのデータを管理しなければいけないクラスあるいはmain関数が保持すればいい クラスが持つっていうのはそのクラスのスタティックメンバにしろという意味? それでは結局グローバル変数とか無名namespace内変数とあまり変わらないような気がする。
- 866 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 18:21:24.53 ID:A+1idbvt0.net]
- >>842
言ってる意味がわからない クラスA内クラスBとCを宣言して B b; C c; c.set_data(b); だとか main関数内で Dptr d_ptr = D::get_resource(); Eptr e_ptr = E::get_resource(); F f(d_ptr, e_ptr); f.excute(); とかこんな風にする
- 867 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 18:30:22.24 ID:+enXMbbO0.net]
- >>843
んー >そのデータを管理しなければいけないクラスあるいはmain関数が保持すればいい 「あるいは」ってどういう意味? main関数内に持つ方はわかるんですよ。 そうでなく、「クラスが保持」の方の解説をお願いしたい。ずっと保持し続けるんだから スタティックメンバなのかな?と思った。
- 868 名前:817 mailto:sage [2017/10/01(日) 18:34:27.58 ID:SWvA/SVx0.net]
- >>820
では、例えば初期化時にtheApp内に、Doc、View、MainFrmクラスのポインタをメンバに持たせておいて、 以降、あらゆるクラスからtheAppを介してアクセスしてもよいということですね。 こういったやり方でふとよぎった不安なんですが、 長時間アプリを起動していたとき、とあるクラスの参照ポインタがいつのまにか変わっていて、 例えばビュークラスを取得しようと「theApp.GetView()」としたときにはすでにそこにViewクラスはいない。。。なんてことは起こりませんか?
- 869 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 19:04:09.96 ID:c8q3kohq0.net]
- >>845
起こらないように設計する。
- 870 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 19:06:45.42 ID:A+1idbvt0.net]
- >>844
普通なパブリックなメンバでいいと思うけど その所有権をもったクラスの寿命が尽きたら同時に開放される >>845 もちろん参照元からは参照先の実態があることが保障されないのでよくある 特定のメンバの参照数が数百箇所になってたときは手に負えなくなったのでさすがに作り直した
- 871 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 19:24:06.85 ID:8m985+fI0.net]
- 「クラスの寿命」とかもう難しすぎてついていけんわ
- 872 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 19:38:58.01 ID:A+1idbvt0.net]
- >>848
推敲とかしてないのである程度読み替えて言いたいことを汲み取ってね そのクラスの変数の寿命な
- 873 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 19:42:13.70 ID:+enXMbbO0.net]
- うん、寿命の長いオブジェクトをどうやって保持し続けるかっていう話なのにね
- 874 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 19:51:59.11 ID:P+J8m3XL0.net]
- 悩む理由がよく分からないが。適当な管理クラス作ればいいだけでは。
- 875 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 19:54:30.69 ID:+enXMbbO0.net]
- >>849
寿命の長いオブジェクトをどうやって保持し続けるかがテーマなので、 「a というデータはクラスBのオブジェクトbに持たせればいい」では じゃあそのbはどこにどうやって保持し続けるのかという無限後退に陥る。 普通のグローバル変数やシングルトン theAppにぶら下げるの mainの中に置く 一長一短あるのでそれ以外に何かないかなという話
- 876 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 20:03:44.13 ID:P+J8m3XL0.net]
- 別に永続化、シリアライズの話までしてないわけでしょ。
mainかグローバルの2択で推奨はmain、どのスコープからも見えてアクセスしたいならグローバルもありで終わりでしょ。
- 877 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 20:06:34.68 ID:+enXMbbO0.net]
- >>853
あなたの意見は>>833以降ずっと一貫しているからいいですよ。 >>823の意見がわかるようでわかりにくい
- 878 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 20:15:10.00 ID:P+J8m3XL0.net]
- MFC? H社のソフトのことかな?
- 879 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 22:22:01.91 ID:SWvA/SVx0.net]
- >>846
>>もちろん参照元からは参照先の実態があることが保障されないのでよくある ソースコードで意図的にdeleteとか、アドレス移動する命令をいれてなくても起こるんですか? (ガベージコレクションみたいなことが)
- 880 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 22:50:35.76 ID:LFbo+6zld.net]
- >>829
無知を謝る必要はない マルチコアのDSPをOSレスで使うとか
- 881 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 22:54:38.73 ID:LFbo+6zld.net]
- >>826
パラメータで渡すべき情報と そうじゃない情報と がある
- 882 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 23:00:12.89 ID:LFbo+6zld.net]
- >>852
スタティックメモリ(グローバル変数など) auto変数(スタックやレジスタなど) OSやAPI側の保存領域(APIを用いた設定など) ファイルなど
- 883 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 23:08:17.57 ID:A+1idbvt0.net]
- >>856
起こるわけないが
- 884 名前:デフォルトの名無しさん mailto:sage [2017/10/01(日) 23:28:49.53 ID:LFbo+6zld.net]
- 意図的じゃないdelete
- 885 名前:デフォルトの名無しさん [2017/10/02(月) 15:27:40.28 ID:jSh1mr/v0.net]
- > プログラムのあらゆる箇所で
> theApp()->getMemberA()->getMemberAA()->getMemberAAA()->...->getMemberZZ()->getValue() > と書かねばならなかった 本当にあらゆる箇所に重複コードを書きまくっているとしたら相当なアフォだな 関数化かキャッシュするだろふつー
- 886 名前:デフォルトの名無しさん [2017/10/02(月) 17:30:53.86 ID:wJY11lw/0.net]
- 最近WindowsのほうでVSを入れまして、簡単なSTGを作って遊んでいるのですが、MacOSでもC++でSTGを作ることはできるのでしょうか?
Windowsでは、DxlibといったSTG制作に特化したライブラリがありますが、MacOSではどうなのでしょうか…?実際にMacでSTG制作の経験がある方、挫折した方の話をお聞かせください。よろしくお願いします。
- 887 名前:デフォルトの名無しさん [2017/10/02(月) 17:45:41.63 ID:M0wavUvt0.net]
- DXLibがSTG制作に特化したライブラリ…
- 888 名前:デフォルトの名無しさん [2017/10/02(月) 18:07:53.55 ID:wJY11lw/0.net]
- >>864
何かおかしなことを言っていたらすみません。 STG制作入門のホームページでそのようなことが書かれていたので、そう認識していた次第です。
- 889 名前:デフォルトの名無しさん mailto:sage [2017/10/02(月) 19:07:36.56 ID:SPyFybU20.net]
- それはDirectXの薄いラッパなので何に特化しているとかはない
マルチプラットフォームで作りたいならOpenGLで作れ
- 890 名前:デフォルトの名無しさん [2017/10/02(月) 20:27:58.95 ID:wJY11lw/0.net]
- OpenGLか…
難しそうだしまだ取っ付くべきじゃないような気がするんだけどそんなことはない?
- 891 名前:デフォルトの名無しさん [2017/10/02(月) 20:36:13.43 ID:/AEbHlJU0.net]
- Valkan行こう
- 892 名前:デフォルトの名無しさん mailto:sage [2017/10/02(月) 22:38:15.66 ID:O4roxos+0.net]
- >>845
それぞれアクセス関数が用意されているので馬鹿なことはやめなさい
- 893 名前:デフォルトの名無しさん mailto:sage [2017/10/03(火) 00:06:57.08 ID:AOU4wQiN0.net]
- >>862
黙れよキチガイ theApp()はtheAppかthisの間違いだがそれは別にして メソッドgetMenberA()を有するクラスから始まって、 メソッドgetValue()を有するクラスFooまでの全てのクラス が完璧にカプセル化された設計の元で theAppから配下のFooのメンバにアクセスするアクセッサは実質的に>>862な状況を呈する これはもう完璧なカプセル化を諦めて途中までグローバル変数にする(挿し木設計)か インライ
- 894 名前:涛W開による最適化を期待するぐらいしか手が無い []
- [ここ壊れてます]
- 895 名前:デフォルトの名無しさん mailto:sage [2017/10/03(火) 00:11:53.92 ID:AOU4wQiN0.net]
- まあ神の視座に立てば完璧な抽象化を徹底してそんな深いアクセッサをいらなくすれば良いのだが
そんなことが最初からできるなら苦労は無い、
- 896 名前:デフォルトの名無しさん [2017/10/03(火) 05:23:10.92 ID:ZkSEHHAS0.net]
- > カプセル化を諦めて途中までグローバル変数
ヘボ野郎
- 897 名前:デフォルトの名無しさん mailto:sage [2017/10/03(火) 15:26:50.04 ID:tYdASm94H.net]
- 二次元配列の中身を1命令で一気に出力する方法はないでしょうか
いちいち2重ループかくのめんどくさいです
- 898 名前:デフォルトの名無しさん [2017/10/03(火) 16:01:22.87 ID:ZkSEHHAS0.net]
- CならあるがC++では一般的な方法はない
- 899 名前:デフォルトの名無しさん [2017/10/03(火) 16:16:18.00 ID:vTZ8MAnuM.net]
- >>874
Cでの方法を教えていただけると嬉しいです
- 900 名前:デフォルトの名無しさん [2017/10/03(火) 16:16:57.77 ID:vTZ8MAnuM.net]
- すいませんIDかわりました
>>875は>>873です
- 901 名前:デフォルトの名無しさん [2017/10/03(火) 16:20:42.09 ID:ZkSEHHAS0.net]
- 俺も暇なヤツだなw
template <typename T> void print_dim(T&); template <typename T, int RANK> struct print_dim_t { void doit(T& x) { for(auto& y : x) print_dim(y); } }; template <typename T> struct print_dim_t<T, 1> { void doit(T& x) { for(auto& y : x) std::cout << y << ','; } }; template <typename T> void print_dim(T& x) { print_dim_t<T, std::rank_v<T>> obj; obj.doit(x); }
- 902 名前:デフォルトの名無しさん [2017/10/03(火) 16:34:48.99 ID:ZkSEHHAS0.net]
- #define print_dim(array, type) do_print_dim_##type((type *)&array, (type *)(&array + 1))
void do_print_dim_int(int *first, int *last) { for(int *p = first; p != last; p++) printf(" %d", *p); }
- 903 名前:デフォルトの名無しさん mailto:sage [2017/10/03(火) 16:54:32.30 ID:hqWXgVBV0.net]
- 暇じゃないので横着しました
int* it = (int*) mat; for_each(it, it + ROW * COL, [](int i){cout << i << " ";});
- 904 名前:デフォルトの名無しさん mailto:sage [2017/10/04(水) 18:26:58.85 ID:O2xwfga8d.net]
- linuxの質問です
・koファイルからコマンドライン実行で実行ファイルを実行したい どうやって実現するか調べてもわからなくてやり方教えて欲しいです A --B みたいな呼び出しかたをしたい ・複数スレッドを立てているBプロセスを 全スレッドsleepにすることできる?
- 905 名前:デフォルトの名無しさん mailto:sage [2017/10/04(水) 18:34:16.19 ID:O2xwfga8d.net]
- >>880
親プロセスをスリープにできるだけでも問題ないです
- 906 名前:片山博文MZ mailto:sage [2017/10/04(水) 18:45:43.87 ID:HMkkIXOid.net]
- system, execl, execlp, execle, execv, execvp, execvpe, spawn, popen, fork
- 907 名前:片山博文MZ mailto:sage [2017/10/04(水) 18:47:36.46 ID:HMkkIXOid.net]
- sleep, usleep, nanosleep
- 908 名前:片山博文MZ mailto:sage [2017/10/04(水) 19:21:33.45 ID:HMkkIXOid.net]
- 解説が必要ですか?
はい/いいえ
- 909 名前:デフォルトの名無しさん mailto:sage [2017/10/04(水) 19:29:13.24 ID:N0mfbhbs0.net]
- >>880 上半分だけ
.ko ってデバイスドライバとかのローダブルモジュールじゃないかな。 動作中のカーネルにinsmodで組み込まなきゃ使えないと思うんだけど。
- 910 名前:885 mailto:sage [2017/10/04(水) 19:36:09.54 ID:N0mfbhbs0.net]
- すまん、質問の意図を取り違えたかも。
カーネルモジュールの中から外部コマンドを呼びたいって話かな。 可能かも知れん、と言うかカーネルがコマンドを実行するのと同じ手順のはずだが、 具体的な方法はさっぱり分からん。役に立たなくて申し訳ない。
- 911 名前:デフォルトの名無しさん mailto:sage [2017/10/04(水) 22:05:29.41 ID:O2xwfga8d.net]
- >>884
とても欲しいです..
- 912 名前:.
>>886 カーネルオブジェクトから外部コマンド(実行ファイル)をコマンド形式で呼び出したいって意味ですね [] - [ここ壊れてます]
- 913 名前:デフォルトの名無しさん mailto:sage [2017/10/04(水) 22:07:13.92 ID:UdMKuk5G0.net]
- ハッカーですね。
- 914 名前:片山博文MZ mailto:sage [2017/10/04(水) 22:16:13.63 ID:HMkkIXOid.net]
- >>882に書かれている関数のそれぞれの機能を比較し、該当する関数のソース(in Linux kernel)を読んでみては?
- 915 名前:デフォルトの名無しさん mailto:sage [2017/10/04(水) 22:19:51.52 ID:O2xwfga8d.net]
- >>889
今解説読んでいてsleep関連が終わったとこ exec関連多すぎて大変
- 916 名前:デフォルトの名無しさん mailto:sage [2017/10/05(木) 07:00:51.51 ID:AZey7Nzq0.net]
- >>880
ちょいと検索したところ call_usermodehelper て関数があるみたい。
- 917 名前:デフォルトの名無しさん mailto:sage [2017/10/05(木) 21:41:51.13 ID:/Agpj2+3d.net]
- >>891
今調べたら出てきました! 自分が望んだことできそうですありがとうございます
- 918 名前:デフォルトの名無しさん [2017/10/06(金) 09:41:37.58 ID:aNGBh62I0.net]
- ("a,b,c")とは、a,b,cの合計を表すのでしょうか?
それとも、a,b,c各それぞれを表すのでしょうか?
- 919 名前:デフォルトの名無しさん mailto:sage [2017/10/06(金) 10:15:40.40 ID:tNPv5Oyi0.net]
- ここの住人はソースコードをコメントで装飾するのに、どういう書き方をしていますか?
参考にさせて下さい
- 920 名前:デフォルトの名無しさん [2017/10/06(金) 10:26:06.63 ID:8EN3J+m8d.net]
- doxygen方式
- 921 名前:片山博文MZ mailto:sage [2017/10/06(金) 11:28:24.20 ID:u49AV52wd.net]
- >>893
ただのC文字列。
- 922 名前:893 mailto:sage [2017/10/06(金) 14:25:11.99 ID:aNGBh62I0.net]
- >>896
ありがとうございました。
- 923 名前:デフォルトの名無しさん mailto:sage [2017/10/06(金) 19:52:03.20 ID:sTEh17J80.net]
- C++リテラル文字列だろ
- 924 名前:デフォルトの名無しさん mailto:sage [2017/10/06(金) 19:54:12.06 ID:sTEh17J80.net]
- いや、やっぱただの文字列か
- 925 名前:デフォルトの名無しさん [2017/10/06(金) 21:08:44.42 ID:vfMxTM1h0.net]
- → の意味教えて下さい。
- 926 名前:デフォルトの名無しさん mailto:sage [2017/10/06(金) 21:15:27.43 ID:fyJ+AUec0.net]
- そんなものありません。
- 927 名前:片山博文MZ mailto:sage [2017/10/06(金) 21:46:37.43 ID:u49AV52wd.net]
- 「ptr->member」は、「(*ptr).member」と同じ意味。
- 928 名前:900 mailto:sage [2017/10/06(金) 23:48:23.51 ID:vfMxTM1h0.net]
- 参考書の一部です
fast-uploader.com/file/7062856811993/ どう言う意味なのでしょうか?
- 929 名前:デフォルトの名無しさん mailto:sage [2017/10/06(金) 23:52:15.96 ID:vfMxTM1h0.net]
- 本を読んでも
structやunionが具体的に、どの様に動作してるのか分かりません。
|

|