+ -
当前位置:首页 → 问答吧 → 变量 可以这样定义吗?

变量 可以这样定义吗?

时间:2011-12-16

来源:互联网

比如说 变量 A="B"; 如何把 A的内容 B 当做一个新变量 的名称呢, 这样要怎么写呢?
比如 A= B

下面的变量名 就是 B=“ff”;

如果A等于 C
下面的变量就是 

C=“ddd";

主要就是 如何把一个变量的内容 变成 变量名。谢谢,这样要怎么写。感谢。

作者: xieaqiang   发布时间: 2011-12-16

需要自己做解析来转换

作者: oyljerry   发布时间: 2011-12-16

没有这种做法,不知你是何用途?

如果有时想要类似做,可适当用数组啊。

如: i = 1;
  iDim[ i ] = 5;// 即 iDim[ 1 ] = 5

作者: keith_cheung   发布时间: 2011-12-16

按照楼主的规则这个有时是行不同的。

比如一个变量为 
char Var[5]="100";

接下来你能第一个变量的名字叫100吗?显然编译器会阻止你的。

作者: sunyongliang118   发布时间: 2011-12-16

变量的内容是字母 是合法的变量名, 我也感觉有点别扭

作者: xieaqiang   发布时间: 2011-12-16

用个数组就行了啊!你无非是不知道下一个变量的名字嘛,类型你也知道。指针和数组都行。变量名又不是输出,只是传递参数,运行参数,是ABC都没关系的吧

作者: liuduo251   发布时间: 2011-12-16

是呀。用数组就可以实现了,你的想法不错,但可以但个思路。

作者: zhongguoren666   发布时间: 2011-12-16

换个思路吧

作者: Delphigis   发布时间: 2011-12-16

你这是在写绕口令吗?

作者: xxlovemf   发布时间: 2011-12-16

从编译的角度应该是不可行的。
变量是object(一般译为对象)的一种,占据内存的一部分,变量名对应一个内存地址。
编译时,编译器会扫描所有的标识符,其中包括变量名,建立一个表。

而LZ这样的变量名,需要在运行时确定。

编译器显然不会在编译过程中运行某段程序,为你的需要确定变量名。

用数组,或者用一个函数指针对应表,或许是可以的。

作者: hztj2005   发布时间: 2011-12-16

应该是不可行的,变量在编译时就不存在了。建议换个思路作,比如指针,这种方法就算实现程序也不是很合理。

作者: zhouRain   发布时间: 2011-12-16

热门下载

更多