CString info[2][82];//数组已赋值
CString sqltext = info[0][i]##[j];
简单点说,就是想循环获取数组名,然后获得数组里面的值
编译提示preprocessor command must start as first nonwhite space,查了半天没查到原因
CString sqltext = info[0][i]##[j];
简单点说,就是想循环获取数组名,然后获得数组里面的值
编译提示preprocessor command must start as first nonwhite space,查了半天没查到原因
使用下列方式可满足你的要求
使用结构数组
typedef { name char[20],int a ;int b} _TEST;
--定义数组
_TEST a[2] = {{"名字A“,1,2},{"名字B",3,4}};if ( strcmp(a[0].name,"名字A") == 0 )
{
a[0].a = 2222;
}
elseif ( strcmp(a[1].name,"名字B") == 0 )
{
}
else
.....
可以用如下方法实现要求,用结构数组
typedef struct { name char(20);int a;int b} _TEST;
--定义
_TEST test = {{"名字a",1,2},{"名字b",3,4}};if(strcmp(test[0].name,"名字a") == 0 )
{
test[0].a = 22222
}
else if ( strcmp(test[1].name,"名字b") == 0
{
}
else
....
我觉得你存数组的首地址更好,而不是存变量名。
C++编程
能不用宏就不应该用宏
这是C++语言发明者的忠告
所以你所谓好点的方法肯定不是真正的好方法不过我确实没看明白你想干什么
如果你写的表达式是正确的(当然他肯定是错误的)
sqltext的值是什么?
sqltext==“info[0][i][j]”?
你为什么不用Format