我想将user_uname和user_pwd的值存储到有效用户[c] [0]和有效用户[c] [1]。还将字符串“ normaluser”存储到有效用户[c] [2]。
但是它显示了一个错误“无法将char *转换为char”。这是我的代码:

char validuser[20][20];
int c;
char user_uname[20],user_pwd[20];
cout<<"\n Enter User Detail";
cout<<"\n enter Username:";
cin>>user_uname;
cout<<"\n Enter Password:";
cin>>user_pwd;
validuser[c][0] = user_uname;
validuser[c][1] = user_pwd;
validuser[c][2] = "normaluser";
c++;

最佳答案

char validuser[20][20];
....
validuser[c][0] = user_uname;


validuser [] []是一个字符,因此您无法分配。在您的代码中,您可以使用:

strncpy( &(validuser[c][0]), user_uname, 20 );


但是,为什么不使用std :: vector或std :: array?在大多数情况下,std :: string为您提供足够好的功能。

关于c++ - 如何将字符变量存储为二维字符变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32969288/

10-11 18:30