寻找一种方法将Char *分配给Char

时间:2013-04-25 20:13:41

标签: c char

所以基本上我会在这样的东西中加入4个字符:

char color1 = 'y';

我想做的是:

char *newcolor = color1;

基本上我会得到一个y并且我想将它存储到我的char *中,以便我可以连接字符,所以成为char * colorpattern并看起来像这样ygpb代表颜色的字母。

希望有一种简单的方法来分配它,如果没有生病,请尝试找一种方法将值存储到char *中。

2 个答案:

答案 0 :(得分:5)

你想要什么:

给定一个字符,将其设为字符串。

如何解决:

将其存储在数组中并终止NUL:

char str[5];
str[0] = 'y';
str[1] = 'g';
str[2] = 'b';
str[3] = 'p';
str[4] = 0;

答案 1 :(得分:2)

你需要声明一个具有足够空间的缓冲区,不仅可以保存单个'y'字节,还可以保存要添加到其中的内容和空终止符......

char color1[5] = "y";

strcat( color1, "g" );
strcat( color1, "p" );
strcat( color1, "b" );

或者,在一个膨胀的泡沫中,你可以在以后覆盖......

char color1[5] = "ygpb";

您无需将char分配给char*即可完成目标。