我在C方面并不擅长,在我做了很长时间之后,我需要做一件非常简单的事情:
char code[]="aasd";
char *rmessage="";
strcat(rmessage,code[0]);
我只是想将数组code
的索引0的内容连接到rmessage
。
答案 0 :(得分:3)
您需要确保rmessage
中有足够的空间来存储连接的结果。您可以使用strncat指定要从字符串中复制的字符数:
char code[] = "aasd";
char rmessage[1024] = "";
strncat(rmessage, code, 1);
或者,在这种情况下,只需指定rmessage
的第一个字符:
rmessage[0] = code[0];
答案 1 :(得分:1)
长时间不用C编码。我认为语法正确。
int sz=10; // sz = # number of chars you want to store + 1 , i assumed 9 characters will be stored at max.
char code[] = "aasd";
char *rmessage = malloc(sz*sizeof(char));
rmessage[0]=code[0];
rmessage[1]=NULL;
*请记住在工作完成后释放分配给rmessage的内存。
free(rmessage);