C・C++・C#
- C++について
C++のポイントオブジェクトを持つ関数を呼び出す時の引数の渡し方とログ出力について教えて欲しいです。 extern BOOL Post(Load&m_load,Rout&m_rout,Exit&m_exit, Const char lum, int priority) (Load, Rout, Exitはクラス型) という関数を呼び出すとします。 lumとpriorityは文字と数字を渡せばいいのは分かるのですが、オブジェクトポインタを指定されているLoad, Rout, Exitは何を渡せば正解なのか分かりません。 とりあえずオブジェクト渡せばいいのかと思って Load load; Rout rout; Exit exit; として Post(load, rout, exit,'A', 13) で呼び出してデバッグしたら関数が止まってしまいました。 オブジェクトポインタを引数に持つ場合、何を渡したらいいのでしょうか。 それと止まった関数をステップ実行でどこが止まっているのか見てみたらログ出力のリクエスト待ちのところで止まっていました。 引数がおかしいせいで止まっているのだと思っていましたが他にも原因があるのでしょうか? 本当は自分で解決したいのですがあまり時間がなく、勉強する時間もありません。よろしくお願いします。
- C++言語について
赤・緑・青の3種類の宝石が写っている写真がある。 赤い宝石を赤い円、緑の宝石を緑の円、青い宝石を青の円でそれぞれ囲い、それぞれの宝石の個数をコンソールに出力するプログラムを考えているのですが、どのようなソースコードを作れば良いでしょうか。
- 締切済み
- galeclipse888
- C・C++・C#
- 回答数3
- C言語/プログラミング
1 1 2 2 3 3 このように同じ数字になったら同じ処理をループさせる方法(do whileを使って)を教えてください。
- プログラミング/C言語
1~3の指定された数字で、指定範囲外の数字を入力したら再度入力させるプログラミング(ループ式で)(do while)を教えてください。
- C言語の型キャスト
C言語入門者です、よろしくお願いします C言語の型キャストについて教えてください 参考サイトで以下のようになってました char str[8] = "ABC"; char *ptr; ptr = (char*)str; printf("char型ポインタのアドレス先の値は: %s\n", ptr); この型キャストって意味ありますか? キャストしようがしなかろうがptrに収まるのはstrの先頭アドレスですよね? ただ型キャストを説明するためだけにこのような形にしているのか 意味がある型キャストなのかが解らず迷ってます
- Windowsのマウスカーソル変更について
Windows10でマウスカーソルを独自のものに変更しようと思うのですが、cursorファイルに入れているのにその画像に変更できません拡張子はちゃんと.curになっています、何故でしょう?
- 締切済み
- ssjj520ooo
- C・C++・C#
- 回答数1
- 浮動小数点型データの誤差
doubleなどの浮動小数点型の数値を値渡しで関数に渡したとき、内部表現は変わらないことは保証されていますか? double g_d; void func(double d) { assert(d==g_d); // これは保障されている? } void main() { g_d=1.23; func(g_d); } 似たような話で、異なるコンテキストで定義した同じ数値は必ず同じ内部表現を持つのか気になります。 class Class1 { double d=1.23; }; class Class2 { double d=1.23; }; void main() { Class1 c1; Class2 c2; assert(c1.d==c2.d); //これはどのような処理系でもOK? } Class1とClass2が異なるコンパイル単位に定義されている場合はどうでしょうか?もちろんこのような比較はしないのがベターだとは思いますが、古いコードに多く残っていて修正すべきかどうかなと。 クラスや構造体のメンバの場合、パディングのような処理系依存のややこしい話もあるので気になります。
- コマンドのを教えてください
以下のコマンドが思うように動きません。 Ubuntuで実行しています。 xとyの乱数を出してそれを${x}と${z}に入れて実行したいのですが数字が入りませんなぜなのでしょうか? 教えてください #!/bin/bash SCREEN_NAME='minecraft' x='echo $RANDOM' z='echo $RANDOM' sudo screen -p 0 -S ${SCREEN_NAME} -X eval 'stuff "spreadplayers ${x} ${z} @a\015"'
- ベストアンサー
- hikatyann77
- C・C++・C#
- 回答数4
- makefileの中のソースプログラム指定について
プログラムをコンパイル・リンクして実行ファイルを作成するためのmakeの利用についてお尋ねします。mekefileを編集してmakeコマンドを投入すればあとは指示通りに実行ファイルを作成してくれるわけですが、ソースプログラムを指示するところではすべてのファイル名を記入する必要があるのでしょうか。それともワイルドカードというか、*.f90のようにフォルダ内のすべての.f90を対象にして処理するように指示できないでしょうか(途中で出力されるオブジェクトファイルもですが)。ソースファイルが小分けにして50個ぐらいあるのですが。よろしくお願いします。 Windows10上でのGnu make ver 4.1です。
- 締切済み
- skmsk1941093
- C・C++・C#
- 回答数1
- C言語でtxtデータから日付の数値だけ読込たい
sample02.txtファイルには「19日 18日 17日…22日」と一行に1日づつの日付データがはいっています。それをC言語で数値の部分だけ読込むつもりでプログラムを書いたのですが1行目の「19」はとれたところでダメになってしまいます。。。何がまずいのか教えていただけますでしょうか。 VisualStudio2019で学習しております。 ソースとデータを以下に添付いたします。 よろしくお願いいたします。 日付読込.c #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main() { FILE* const fp = fopen("sample02.txt", "r"); if (fp) { int d; int buf = 0; for (;;) { buf = fscanf(fp, "%d日", &d); if (buf > 0) printf("%d buf%d\n", d, buf); else { printf("buf%d", buf); break; } } } } sample02.txt 19日 18日 17日 16日 15日 12日 10日 9日 8日 5日 4日 3日 2日 1日 29日 28日 27日 26日 25日 22日
- ベストアンサー
- tantantan2020
- C・C++・C#
- 回答数1
- 文字列を読み上げるプログラム(C言語)
C言語で、ランダムに文字列(数字と文字の混合)を指定した文字数だけ生成し、それを読み上げるプログラムを作ろうと思っています。この内、読み上げるプログラムをどのように書けば良いのかわかりません。自分で音声を録音してその音声ファイルを読み込んで再生するという方法しかないのでしょうか?もっと良い方法をご存知でしたらご助言頂ければ幸いです。OSはUbuntuです。よろしくお願いします。
- C#コンパイラーでエラー発生
以下長文になりますが、一読の上対処方法を教えて下さい。 便利な記事を見つけました。 https://q7z.hatenablog.com/entry/2016/02/10/013850 階層が深いディレクトリー内のファイルを現在の階層(ディレクトリ)に集める事ができる。 私にとって、とても便利な情報です。 この辺になってくるともうバッチだけでは対処できなくなってくるのでプログラムを組む必要があると記載されています。 例として以下のように記載されていてC#のコードも添付されています。 「これをVisual StudioでC#コンソールアプリケーションとしてビルドしてできたexeファイルを、batと同様の場所に置いてファイル名を実行すると動きます。 C#で書きましたが、他の言語でも同じことはできるはずです。」 自分は、C#コンパイラーも持っていないのでexeファイルを作成できる環境が無いと一度はあきらめましたが 以下の記事を見つけてできそうなのでやってみました。 https://www.sejuku.net/blog/104421 以下手順です。 1)コマンドプロンプトを管理者権限で起動 2)以下のコマンドを入力 C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe C:\Users\konno\C+TEST\c+test.cs 3)以下の文字がプロンプト画面に表示されます C:\Users\konno\C+TEST>C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe C:\Users\konno\C+TEST\c+test.cs Microsoft (R) Visual C# Compiler version 4.8.4084.0 for C# 5 Copyright (C) Microsoft Corporation. All rights reserved. This compiler is provided as part of the Microsoft (R) .NET Framework, but only supports language versions up to C# 5, which is no longer the latest version. For compilers that support newer versions of the C# programming language, see http://go.microsoft.com/fwlink/?LinkID=533240 英文を翻訳するとコンパイラがサポート外なので上記のURLにのリンクを開くと下記に移動しました。 https://github.com/dotnet/roslyn 移動先が正しいのかが分からないし何をどうしたら良いか?判断できません。 良きアドバイスをお願いします。 以下、英文の翻訳 このコンパイラは、Microsoft (R) .NET Frameworkの一部として提供されています。 このコンパイラは、Microsoft (R) .NET Frameworkの一部として提供されていますが、最新バージョンではないC# 5までの言語バージョンしかサポートしていません。 新しいバージョンのC#をサポートしているコンパイラーはこちら。 ------------------------------------ なお、私の C:\Windows\Microsoft.NET\Framework\ のフォルダーには 1041 v1.0.3705 v1.1.4322 v2.0.50727 v3.0 v3.5 v4.0.30319 がありますが、 v4.0.30319がこの中では最新のようなのでこれを利用しました。 間違っていますか ? ----------------------------------------- 以下がC+test.csのコードです。 using System.IO; namespace ZapAll { class Program { private static readonly char separator = Path.DirectorySeparatorChar; static void Main(string[] args) { foreach (var item in Directory.EnumerateDirectories(Directory.GetCurrentDirectory())) { Zap(item); } } static void Zap(string path) { // process children directories first foreach (var dir in Directory.EnumerateDirectories(path)) { Zap(dir); } // zap all files foreach (var oldPath in Directory.EnumerateFiles(path)) { var newPath = oldPath.Insert(oldPath.LastIndexOf(separator), "_"); newPath = newPath.Remove(newPath.LastIndexOf(separator), 1); File.Move(oldPath, newPath); } // delete directory Directory.Delete(path); } } }
- linuxでguiアプリケーションを作るには
linuxでguiをもったアプリケーションを作るには、どんな環境が一般的なのでしょうか? プログラミング言語はc++で、guiはqtという組み合わせが多いように見えます。qtは有料だと思うんですが、無料で使える環境はあれば良いです。 できればクロスプラットフォームがいいですが、electronなどは重い印象です。 目的はblenderのような3d描写出来るソフトです。
- ベストアンサー
- inudaisukidesu
- C・C++・C#
- 回答数2
- C♯のフォームについて
ひとつのcs内で複数のフォームを插入し、それぞれに別のハンドルを割り当てたりラベルを貼り付けたりする事は可能でしょうか。 どのようにフォームを増やしハンドルを割り当てるかを教えていただけないでしょうか。 フォームの個数は増えたり減ったりするものとします。 よろしくお願いいたします。
- 締切済み
- buraburatime
- C・C++・C#
- 回答数1
- VS2015 ブレークポイントで編集できない
Windows10 64bit Visual Studio Express2015 for Windows Desktopで、デバッグ中にブレークポイントで止めて編集できない。 エディットコンティニュを有効にしても以下の現象が出ており、デバッグ中の編集ができません。 1.「ツール」-「オプション」-「デバッグ」-「全般」で、「マネージ互換モード」のチェックを入れると、編集時に「マネージ互換モードは、エディットコンティニュをサポートしません。」となり編集できない。 2.「マネージ互換モード」のチェックを外すと、ブレークポイントで止まらなくなる。 プロジェクトのプロパティで、プラットフォームターゲットをx86、x64、AnyCPUのどれにしても同じ現象 どうすれば編集できるようになるのでしょうか?
- 締切済み
- k-03matsuura
- C・C++・C#
- 回答数2