Chinaunix

标题: 请问怎样以用户输入的字符串的内容作为变量名? [打印本页]

作者: HumanPaladin    时间: 2008-08-14 21:29
标题: 请问怎样以用户输入的字符串的内容作为变量名?
我想以用户输入的字符串的内容作为变量的名字,请问以什么样的思路来实现比较好?
作者: cjaizss    时间: 2008-08-14 21:37
我想你的意思应该是,以用户的输入为查询的索引
作者: HumanPaladin    时间: 2008-08-14 21:42
原帖由 cjaizss 于 2008-8-14 21:37 发表
我想你的意思应该是,以用户的输入为查询的索引

也不是了,就是想以用户输入的内容来作为变量名,不知道怎么实现,请指教。。。

[ 本帖最后由 HumanPaladin 于 2008-8-14 21:51 编辑 ]
作者: xi2008wang    时间: 2008-08-14 21:53
编译后都没有变量名了
作者: cjaizss    时间: 2008-08-14 21:57
原帖由 HumanPaladin 于 2008-8-14 21:42 发表

也不是了,就是想以用户输入的内容来作为变量名,不知道怎么实现,请指教。。。

那我只能说,可能你对C语言并不太了解
作者: cugb_cat    时间: 2008-08-14 22:01
楼主说说原始需求吧
作者: qliu00    时间: 2008-08-14 22:09
可以直接用用户输入的内容来作为变量名.没什么思路啊,

直接用就可以了
作者: blizzard213    时间: 2008-08-14 22:11
原帖由 qliu00 于 2008-8-14 22:09 发表
可以直接用用户输入的内容来作为变量名.没什么思路啊,

直接用就可以了


简单啊 加一层间接
写一个codegenerator就可以了 然后动态编译运行。。
作者: HumanPaladin    时间: 2008-08-14 22:25
原帖由 cugb_cat 于 2008-8-14 22:01 发表
楼主说说原始需求吧

是这样的,我正在做《数据结构》中线性顺序表的那一部分的上机操作。

typedef struct{
   .....
}SqList;    /*SqList是顺序表的结构体类型*/

char list_name[20];
printf("Enter the name of the list:");
fgets(list_name,sizeof(list_name),stdin);    /*用户输入结构体的名字*/

问题是怎样用SqList来定义用户输入的顺序表的名字,应该采用什么样的方法,不知道我说明白没有?谢谢
作者: blizzard213    时间: 2008-08-14 22:30
原帖由 HumanPaladin 于 2008-8-14 22:25 发表

是这样的,我正在做《数据结构》中线性顺序表的那一部分的上机操作。

typedef struct{
   .....
}SqList;    /*SqList是顺序表的结构体类型*/

char list_name[20];
printf("Enter the name of the l ...

给结构加个char*域就可以了
还以为是啥bt需求咧。。
作者: Godbach    时间: 2008-08-14 22:46
用法比较特别啊,呵呵
作者: gawk    时间: 2008-08-14 23:14
没描述清楚,^_^
作者: sunlan    时间: 2008-08-15 09:43
不就是拼装动态sql语句吗?和C语言变量没啥关系吧?
作者: wangsheng0415    时间: 2008-08-15 09:51
借个地方问下
char型指针怎么转换成void (*)()指针??
作者: benjiam    时间: 2008-08-15 10:22
typedef void (*funpoint)();
char *p;
funpoint fp = (funpoint)((void *)p);
作者: qliu00    时间: 2008-08-15 10:26
原帖由 sunlan 于 2008-8-15 09:43 发表
不就是拼装动态sql语句吗?和C语言变量没啥关系吧?

拼装动态sql语句,必须以动态SQL来引导
作者: wangsheng0415    时间: 2008-08-15 11:06

用static_cast不行呢
作者: qliu00    时间: 2008-08-15 11:12
static_cast不行,因为你要拼装动态sql语句




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2