C语言问题:如何把一个字符转换成字符串(最好是字符数组)?
比如:ch1='a';/*是字符*/k[5]={"sj"};/*字符数组*/要求:把字符a转换成一个新的数组p[2]="a",然后利用strcat(k,p),把'a'接到...
比如:
ch1='a'; /*是字符*/
k[5]={"sj"}; /*字符数组*/
要求:把字符a转换成一个新的数组 p[2]="a",然后利用strcat(k,p),把'a'接到sj后面,使k[5]={"sja"}.
只要能把字符a能接到k[5]后面就行!也可以不用strcat函数! 展开
ch1='a'; /*是字符*/
k[5]={"sj"}; /*字符数组*/
要求:把字符a转换成一个新的数组 p[2]="a",然后利用strcat(k,p),把'a'接到sj后面,使k[5]={"sja"}.
只要能把字符a能接到k[5]后面就行!也可以不用strcat函数! 展开
3个回答
展开全部
楼上的两位写法有点冗余,也没有注释。
给你一个简洁的并带上解释,相信会对你理解有帮助。
#include<iostream>
using namespace std;
void main()
{
char ch1='a'; /*是字符*/
char k[5]={"sj"}; /*字符数组*/
char p[2]={ch1}; // 将单个字符转换为字符串数组,注意长度应为2
// 因为语言实现会在字符串尾部自动加上字符串结束符'0/'
// 但有效字符串长度仍然为1, 即strlen(p)的结果为1
// 但使用sizeof(p)则是求p的内存大小(字节),则应为2
cout<<strcat(k, p)<<endl; // 将合并后的结果输出显示,此时k中内容为{"sja"}
}
输出结果为:
sja
给你一个简洁的并带上解释,相信会对你理解有帮助。
#include<iostream>
using namespace std;
void main()
{
char ch1='a'; /*是字符*/
char k[5]={"sj"}; /*字符数组*/
char p[2]={ch1}; // 将单个字符转换为字符串数组,注意长度应为2
// 因为语言实现会在字符串尾部自动加上字符串结束符'0/'
// 但有效字符串长度仍然为1, 即strlen(p)的结果为1
// 但使用sizeof(p)则是求p的内存大小(字节),则应为2
cout<<strcat(k, p)<<endl; // 将合并后的结果输出显示,此时k中内容为{"sja"}
}
输出结果为:
sja
2009-04-06
展开全部
#include<stdio.h>
#include<string.h>
void main()
{
char ch1;
char k[5]={'s','j'},p[2]={NULL};
ch1='a'; /*是字符*/
p[0]=ch1;
p[1]='\0';
strcat(k,p);
printf("%s",k);
}
#include<string.h>
void main()
{
char ch1;
char k[5]={'s','j'},p[2]={NULL};
ch1='a'; /*是字符*/
p[0]=ch1;
p[1]='\0';
strcat(k,p);
printf("%s",k);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#include<string.h>
void main()
{
char p1='d';
char p2[4]="abc";
char p[2];
p[0]=p1;
p[1]='\0';
strcat(p2,p);
printf("%s\n",p2);
}
#include<string.h>
void main()
{
char p1='d';
char p2[4]="abc";
char p[2];
p[0]=p1;
p[1]='\0';
strcat(p2,p);
printf("%s\n",p2);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询