どの言語でもそうかわらないとは思いますがよくわからなくなってしまいました
chato変数名
help変数名
list=chato
list.suuji←これを変数名として使えないか
という具合に数字と文字で組み合わせて変数は使えないんでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答5件
0
どの言語でもそうかわらないとは思いますが
んなこたない
変数名だけ見ても「実行時には消えてなくなってる」「実行時にも保持している」「ローカル変数については消えているが、グローバル変数等は保持している」などと種類があります。
C言語については、「実行時には変数名は消えてなくなっている」言語なので
変数名をコンソールから入力して云々みたいなのはほぼ不可能です。
もし、これをやりたい場合にはハッシュ構造などを実装する必要があります。
これとは別に変数から別の変数を指す方法としてポインタ変数があります。
c
1int main(){ 2 int i = 88; 3 int *p = &i; 4 printf("%d\n", *p); // => 88 5 i = 55; 6 printf("%d\n", *p); // => 55 7}
投稿2018/06/16 04:44
総合スコア15147
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
どの言語でもそうかわらないとは思いますが
いえ、「変数名を動的に生成する」ような操作を行う場合は、言語によって全く事情が異なります。
残念ながら、C言語の場合はコンパイル時点で変数名の情報が消えてしまうなど、仕組み上変数名からの変数参照は対応していません。
投稿2018/06/15 22:59
総合スコア145123
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/16 06:55
2018/06/16 09:34 編集
2018/06/16 15:56
2018/06/16 22:09
0
Cなら配列で代用しますかね...
const char* name[5] = { "abe", "inoue", "ueda", "eguchi", "oda"}; // 名前(5人前) int score[5]; // 得点(5人前) int i; /* 5人の得点を0クリア */ for ( int i = 0; i < 5; ++i ) { score[i] = 0; }
...とかなんとか。
投稿2018/06/15 23:56
総合スコア16614
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。