C 如何把一个字符串当作变量名使用

来源:百度知道 编辑:UC知道 时间:2024/06/27 10:44:24
打个比方,

int xxx;
char yyy;
void func(char * valname)
{
//希望不要用这样的判断语句
if(!strcmp(valname,"xxx")){
xxx=1;
}

if(!strcmp(valname,"yyy")){
sprintf(yyy,"%s","YYYY");
}
}

意思就是说函数func的参数是个字符串,根据字符串使用相同的变量名。
那么有什么替代放案呢,打个比方说说,可以追加50~100分

php 都可以 使用哦比如
$a= "100";
$b="a";
$$b=="100";

不可以的,想直接使用是不行的。
因为变量名仅仅只是一个标识,是一个内存地址,
编译后,他的名称可能都和你源代码里定义的不一样了。

其实不应该出现这样的逻辑的,
总是有其他方式可以代替的。
//===================
“那么有什么替代放案呢,”
只能从逻辑上来替代,功能上的替代方案是没有的。

顶楼上的

C 如何把一个字符串当作变量名使用?????
你说的是什么意思呢.....
一般C语言中是没有字符串变量的!!!但是字符串的存储是放在数组中的,是char型的数组!!!!
那么用数组名就可以表示字符串了啊....
比如:
char a[]="china";
那么引用就用数组的名字a 就行了...你是这个意思吗????