
int m_nTypeCounter=0;
と定義した変数を使い
if((pDoc->m_sRomaji).GetAt(&m_nTypeCounter)==m_sStr)
{
m_sAnser += m_sStr;
m_nTypeCounter++;
}
とした際、コンパイルエラーが
『C:\project\2008年課題\コピー ~ 問題・時計領域のみ再描画tokeidouga\ProgramView.cpp(536) : error C2664: 'GetAt' : 1 番目の引数を 'int *' から 'int' に変換できません。 (新しい機能 ; ヘルプを参照)』
この変換には reinterpret_cast, C スタイル キャストまたは関数スタイルのキャストが必要です。』
と表示されます。
どうしたら良いのでしょうか。
よろしくお願いします。

No.3ベストアンサー
- 回答日時:
環境がわかりませんが、MFCのCString::GetAt()がエラーになっているのですか?
m_sRomajiがCStringならば、GetAtは指定した位置のTCHARを取得する関数(戻り値TCHAR)になります。
比較対象をm_sStrではなく、m_sStr[0]やm_sStr[1]のようにTCHARの値と比較すれば、エラーはなくなると思います。
ご解答ありがとうございます。
環境について、書き忘れてしまいました。でも、ご推察の通り、です。早速CStringにしてみたいと思います。
ありがとうございました。
No.2
- 回答日時:
その「& を外した」ときに出る「別のコンパイルエラー」とはどのようなものでしょうか?
この回答への補足
ご解答ありがとうございます。
&を外すと
『C:\project\2008年課題\コピー ~ 問題・時計領域のみ再描画tokeidouga\ProgramView.cpp(537) : error C2446: '==' : 'char *' 型から 'int' 型への変換ができません。
この変換には reinterpret_cast, C スタイル キャストまたは関数スタイルのキャストが必要です。
C:\project\2008年課題\コピー ~ 問題・時計領域のみ再描画tokeidouga\ProgramView.cpp(537) : error C2040: '==' : 'int' は 'char [2]' と間接操作のレベルが異なります。
cl.exe の実行エラー』
と表示されてしまいます。
ちなみに、m_strは
『char m_sStr[2];』
と定義しています。
すみません。自分で補足を書きながら、自分の間違いに気付きました。
m_sStrがcharだから対応できないんですね。
CStringにしてみましたところ、エラーは解消されました。ありがとうございます。
No.1
- 回答日時:
>1 番目の引数を 'int *' から 'int' に変換できません。
こう言われてるんだからそれに適合するように変更したら良いよ
宿題みたいだから教えると違反だから教えてあげられないのでヒントだけ↑にかいといた
この回答への補足
確かにプログラムの名称に課題が入っていますが、タイピングゲームを独自で作ってみようと思って、勝手に課題を作ってやっているだけなので、宿題というわけではないんです。紛らわしくて申し訳ございません。
ご心配いただきありがとうございます。
実は、コンパイルエラーの内容がいまいちわからないんです。
自分なりに読み解くと、int*からintとm_nTypeCounterがポインタだから、&を外せばいいのかな?とも思ったのですが、&を外すと、今度は、別のコンパイルエラーが出てしまうのです。
ヒントだけではなく、できれば、コンパイルが通る方法を教えていただければと思います。よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javaで質問です。 文字列2023/2...
-
エクセルVBAで「〜」が表現でき...
-
int型のゼロ埋め
-
JAVAのハッシュテーブルについて
-
Path型をString型へ変換する(Java)
-
javaの初歩的な質問です。
-
グレイコードの変換
-
なぜか + が半角スペースに変換...
-
jspでString型からlong型への変換
-
数値チェック
-
Windows-31Jからutf-8への変換...
-
Arduino(C言語) String "1101" ...
-
Visual Basic でのコードをASCI...
-
C言語のポインターに関する警告
-
式の型は配列型で int に解決済...
-
ループ処理の際、最後だけ","を...
-
IF関数でEmpty値を設定する方法。
-
メインが含まれていません
-
変数を動的に利用するには?
-
誰か~誰か~誰か~一生のお願...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
javaで質問です。 文字列2023/2...
-
javascriptで文字列のsjis利用...
-
Path型をString型へ変換する(Java)
-
ダブルクォーテーションのrepla...
-
エクセルVBAで「〜」が表現でき...
-
C言語32bitから64bitの移行につ...
-
int型のゼロ埋め
-
Visual Basic でのコードをASCI...
-
Windows-31Jからutf-8への変換...
-
substring バイト単位でやりたい
-
カタカナをローマジに変換する。
-
javaの初歩的な質問です。
-
byte配列をImageに変換する
-
phpでの文字コード変換について
-
JavaのStringクラスに「外字」...
-
"\\n"を"<br>"にうまく変換でき...
-
カタカナ変換
-
JAVAでのShift-JISとEUC-JP間の...
-
COBOLで半角カナを全角カナに変換
-
TEXTAREAからのデータを改行入...
おすすめ情報