C 如何复制字符串并向新字符串添加更多单词?
如果我有此代码:C 如何复制字符串并向新字符串添加更多单词?,c,string,C,String,如果我有此代码: int main () { char *string = "beach" ; char newString[50]; strcpy(newString,string); return(0); } 运行后,newString将成为“beach”,对吗?如果我想newString成为“beach.jpg”,我应该怎么做 谢谢。如果您不想使用任何内置函数 int i=0; for(;newString[i]!='\0';i++); newString
int main ()
{
char *string = "beach" ;
char newString[50];
strcpy(newString,string);
return(0);
}
运行后,newString
将成为“beach”,对吗?如果我想newString
成为“beach.jpg”,我应该怎么做
谢谢。如果您不想使用任何内置函数
int i=0;
for(;newString[i]!='\0';i++);
newString[i++]='.';
newString[i++]='j';
newString[i++]='p';
newString[i++]='g';
newString[i]='\0';
如果您喜欢使用内置函数,那么可以包括这一行
strcat(newString,".jpg");
您只需使用字符串文本初始化数组,然后使用标准库函数
strcat
向其追加“.jpg”
。确保数组string
足够大,否则strcat
可能会调用未定义的行为使缓冲区溢出。另外,请注意,返回
不是一个函数
#include <string.h>
#define MAX_LEN 50
int main(void) {
char string[MAX_LEN] = "beach";
strcat(string, ".jpg");
return 0;
}
#包括
#定义最大长度50
内部主(空){
字符字符串[MAX_LEN]=“beach”;
strcat(字符串,“.jpg”);
返回0;
}
试试:
strcat(strcpy(newstring, string), ".jpg");
始终记住确保新闻字符串中有足够的空间 坚持使用您的代码
int main ()
{
char *string = "beach" ;
char newString[50];
strcpy(newString,string);
strcat(newString,".jpg");
return(0);
}
这里我假设新闻字符串中有足够的空间
int main ()
{
char *string = "beach" ;
char newString[50];
sprintf(newString,"%s.jpg",string);
printf("%s",newString);
return(0);
}
使用sprintf,您可以连接多个字符串。此答案将不使用任何内置函数,而另一个答案不使用内置函数。。删除。