使用strcpy复制字符串数组索引0

Copy string array index 0 using strcpy

本文关键字:索引 数组 字符串 strcpy 复制 使用      更新时间:2023-10-16

我正试图将一个字符(字符串数组索引0)复制到另一个具有30个索引的字符串数组中。

这是一个从两个字符串数组生成用户名的程序。firstName和lastName。用户名的格式需要为:jsmith(例如:用户输入johnsmith。输出应该是jsmith。)

这是我的东西。

void generateName(char firstName[15],char lastName[15])
{
   char userName[30];
   strcpy(userName, firstName[0]);
   strcpy(userName, lastName);
   cout << "Your newly generated username is: " <<userName <<endl;
   getch();
}

我得到这些错误:

无法将"int"转换为"const char*"对"strcpy char*,const char*)"的调用中参数"_src"的类型不匹配从未使用参数"firstName"

如有任何帮助,我们将不胜感激。

因为您需要使用

   strcpy(userName, &firstName[0]);

相反。strcpy的参数必须是指针,您传递的是char数组中第一个字符的值。

但是上面对strcpy的调用将复制整个firstName,直到并包括null终止符。如果你只想复制第一封信,你可以做:

   memcpy(userName, &firstName[0], 1);
   strcpy(&userName[1], lastName); // append last name