とても初歩的な質問なのですが、
文字列を格納する便利な変数とかないのですか?
(『”~”』を格納できる変数)
教えてください。
たとえばプログラムとしてはこんな感じ?
#define STRING "こんにちは"
型(←ここ) str;
//char str; だと、文字列の長さの関係で、不具合があるっぽいです。
int color=GetColor(255,255,255);
DrawString(0, 0, str, color);
あるいはDxLibの関数で、
LPCTSTR型を使ったりするのでも、構いません。
Windowsプログラミングだと、フォントとかHDCとか面倒なので、
是非楽ちんがしたいのです。
その他、冴えた方法があれば、是非教えてください。
DxLibでの文字列変数
Re:DxLibでの文字列変数
…ですか。
でも、とりあえず、現状では、計算結果などを扱う文字列としてでなく、
単純に画面に表示することが目的なので無問題です。
変数に格納できたら、ケース分岐とかで、いろんなところが楽ちんかなー、とか考えていただけなので。
でも、とりあえず、現状では、計算結果などを扱う文字列としてでなく、
単純に画面に表示することが目的なので無問題です。
変数に格納できたら、ケース分岐とかで、いろんなところが楽ちんかなー、とか考えていただけなので。
Re:DxLibでの文字列変数
> std::stringでは駄目なのかな?(^_^;)
C++は勉強不足でよくわからないです。すいません。
どういう風に使うのか詳しく教えていただけたらと思います。
あと、さきの回答が遅れたためちぐはぐになっております、見苦しくてすいません。
C++は勉強不足でよくわからないです。すいません。
どういう風に使うのか詳しく教えていただけたらと思います。
あと、さきの回答が遅れたためちぐはぐになっております、見苦しくてすいません。
Re:DxLibでの文字列変数
std::stringの簡単なサンプルを書いてみました。
慣れるまでは分かりづらいかもしれませんが、便利ですよ。
慣れるまでは分かりづらいかもしれませんが、便利ですよ。
#include <cstdio> #include <iostream> #include <string> int main(void) { // strを"01234"で初期化する std::string str("01234"); // strをcoutを使用して表示 std::cout << str << std::endl; // strをprintfを使用して表示 // c_str()関数を使用すると、std::string内の文字列へのポインタ(const char*型)を取得できる printf("%s\n", str.c_str()); // strの最後尾へ文字列"56"を付け足す str += "56"; std::cout << str << std::endl; // 比較用文字列を用意する std::string cmp("0123456"); // 2つの文字列を比較してみる if (str == cmp) { std::cout << "同じです" << std::endl; } else { std::cout << "違います" << std::endl; } return 0; }
Re:DxLibでの文字列変数
丁寧な回答ありがとうございます。
とてもわかりやすかったです。
現状、DxLib=C,Windowsプログラミングをメインにしているので、
なかなかC++までは手が届かないのですが、
今後の参考にさせていただきたいと思います。
とてもわかりやすかったです。
現状、DxLib=C,Windowsプログラミングをメインにしているので、
なかなかC++までは手が届かないのですが、
今後の参考にさせていただきたいと思います。