• 締切済み

変数名を文字に変換して取り出すには?

初心者ですがよろしくお願いします。 変数名を文字として取り出すにはどうすればよいのでしょうか?

  • tk35
  • お礼率1% (2/108)

みんなの回答

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

変数名を文字列にするときは、引数つきのマクロを定義します。 引数で受け取った変数名は、#をつけることで文字列になります。 マクロ中では、文字にした変数名を、もうひとつの引数であるszにstrcpyで格納しています サンプルです #include <stdio.h> #include <string.h> #define GET_NAME(n, sz) strcpy(sz, #n) int main() { char buf[256]; int ShiritaiHennsumei = 0; GET_NAME(ShiritaiHennsumei, buf); printf(buf); return(0); }

関連するQ&A

  • 変数名と文字の切れ目

    CGIで変数名と文字の切れ目のつけ方がわかりません。 $nomを変数$noと文字mと指定するにはどうすればいいのでしょうか。 よろしくお願いします。

    • ベストアンサー
    • CGI
  • 文字列型の一般的な変数名は?

    おはようございます。 サンプルコードで 数値型の変数名は Dim i As Long のようにiをよく見かけます。 ただ、私が勉強不足のため 文字列型の変数名の一般的な文字に何が使われているのかわかりません。 (str?moji?など?) サンプルコードを書くときに使用する 文字列型の変数名を教えてください!

  • 変数内容が'変数名'の文字列なので、短く書きたい

    下記のような変数が大量にあります。 変数内容は、全て'変数名'の文字列です。 var AAAAAAAQWE = 'AAAAAAAQWE', BACDCFRF = 'BACDCFRF', VZAAAWW = 'VZAAAWW',…… ・変数宣言を短く書き直したいのですが、何か良い方法はあるでしょうか? ・何度も同じことを書くのは非効率な気がするのですが…

  • 変数文字の中に変数を入れたい

    初心者です。宜しく御願いします。 java sprictで文字列の中に変数名を入れたいのですが、 可能でしょうか? 例えば、PHPとかですと、変数の前に「$」があるので、 $hensu1="5"; ${hensu.$hensu}="dekirukana";←このような表現がしたいのです。 echo $hensu5; のような(上のプログラムが動くかどうかは別として)表現が可能かどうかが知りたいのです。 for文などで、一度に多くの変数に値を入れたいのですが、 どうあがいてもできません。わかりません。 どなたか救いの手をお願いします。

  • 変数名の付け方について

    例えば<input type="text" name="aaa">というフォームからのPOSTを受け取るとき、 自分はよく $aaa = $_POST['aaa']; のようにするのですが、変数名とフォームの名前を重複させるのは良くないでしょうか。 またPHPに限らずですが、別のスコープで同じ変数名を使い回すのは問題ないでしょうか。 グローバル変数は慎重に考えますが、ローカル変数はついhogeやtestを使い回してしまいます。 初心者なもので分かりにくい文章になったかもしれませんが、ご教授お願いします。

    • 締切済み
    • PHP
  • 変数名のつけ方が苦手みたいです><

    変数名のつけ方が苦手みたいで困っています。 「変数名のつけ方」などのサイトも読んでいるのですが、 ここでも質問させてください。 ・変数を作るとき(その言語での規則とは別に)、 みなさんなりに工夫されていることとかあれば教えてください。 ・それから、ループ処理のカウンタには、 伝統的に i~n がよく使われているみたいですけど、 どうしてこの6文字なんでしょうか? ・あと、これはプログラムについての質問ではないのですが、 ディレクトリ名やファイル名の上手なつけ方についても、 教えてほしいです。昔は8文字と拡張子のようでしたが、 今もこれを守っていますか? たくさん聞いてすみません。どれかひとつでも結構です。 よろしくお願いします。

  • 動的な変数名のつけ方について

    ■環境 OS:XP 言語:C++ コンパイラ:Visual C++ 2008 char*やstd::string等で格納された文字列を使用して 変数を宣言することは可能でしょうか。 用途として、テキストファイル等から文字列を取得し その文字列を変数名としてプログラミング内で使用するという方法を考えています。 よろしくお願い致します。

  • プロシージャー名とか変数名に数値

    プロシージャー名とか変数名に1や2などの数字は使えないのですが IやIIは使えるのはなぜですか? IIIやIVは数字ではなく文字なのでしょうか? また、(1)や(2)で始まる変数名を使ってもエラーにはなりませんか?

  • Windows 変数名は大文字小文字判定ありますか

    この前、Windowsキー+Rで簡単にソフトを開けるように、http://goo.gl/rna6hy にしたがいました。 ここでは、新しく変数を作って、名前を"path"にするように書いてあったので、そのままそう従いました。 大文字から始まる、”Path”の変数値が消えてはいけないのは前から知っていたのですが、新規に作るのは小文字から始まるから大丈夫だと思い、そのまま変数値をc直下に作ったフォルダ名のみ書いて、ショートカットを起動することは成功しました。 そして今日、Javaを勉強しようと、JDKをインストして、パスを通そうとシステムのプロパティから環境変数を変更しようとしたのですが、前まであった大文字から始まるPathが見当たりません。上書きしてしまったのかと思い、コマンドプロンプトを開いてpathでエンターしてみると、やはり、windowsキー + R 用に作ったフォルダのディレクトリしか出てきません。 自分でも確信していますが、これってやっぱり手遅れですかね? やはり変数名は大文字小文字判定はないんですか? 後、もうひとつ質問なのですが、今まで通っていたパスはないといけないのでしょうか? リフレッシュすれば戻るのはわかっているのですが、やはりソフトなどをすべてリインストールするのは面倒臭いので、ほんとうに必要がなければ、今のまま、必要になったパスを;で追加していければなと持っています。 メインの質問が質問ぽくないので恐縮ですが、ご回答よろしくお願いします。

  • 変数→文字列変数【ParaFla!】

    現在ParaFla!初心者ですが、数字で表された変数を文字列変数に変換するにはどうすればよいでしょうか。 例えば_root.a = 6、_root.b = 7(この時点では両者は文字列変数ではないことに注意)という二つの変数を用いて _root.c = 13ではなく、_root.c ="67"または_root.c ="76"と表すにはどうすればいいかといった具合です。

専門家に質問してみよう