C语言:将一个整型数组转换为字符串输出。如 int[]={10,11,12},输出char *s = "101112"
#include
void IntToStr(int *i, char *c, int len)
{//i为整形数组,c为要存放字符串的数组,len为整形数组元素个数
int k;
char tmp[10];
for(k=0;k<len;k++)
{
itoa(i[k],tmp,10);
strcat(c,tmp);
int main()
或:
#include
int main() // 这里为了方便直接用main函数
{
char array[] = { 'h', 'e', 'l', 'l', 'o' };
/* 需要注意的是,这里没有终结符,故需要知道数组的 */
/* 大小(数组的大小是编译时常量)*/
char *dest_str; // 目标字符串
dest_str = (char *)malloc(sizeof(char) * (sizeof(array) + 1));
/* 为字符串分配堆空间 */
strncpy(dest_str, array, sizeof(array));
// 用C标准库函数strncpy拷贝字符
return 0;
}
扩展资料:
字符串在存储上类似字符数组,它每一位单个元素都是能提取的,字符串的零位是它的长度,如s[0]=10,这提供给我们很多方便,例如高精度运算时每一位都能转化为数字存入数组。
通常以串的整体作为操作对象,如:在串中查找某个子串、求取一个子串、在串的某个位置上插入一个子串以及删除一个子串等。两个字符串相等的充要条件是:长度相等,并且各个对应位置上的字符都相等。设p、q是两个串,求q在p中首次出现的位置的运算叫做模式匹配。串的两种最基本的存储方式是顺序存储方式和链接存储方式。
参考资料来源:百度百科-字符串
数组是整型数组吗?如果是的话,可以取出来转换成字符就行了。例如,整型数值56,然后char
c=56,输出c就行了。相当于强制类型转换。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void IntToStr(int *i, char *c, int len)
{//i为整形数组,c为要存放字符串的数组,len为整形数组元素个数
int k;
char tmp[10];
for(k=0;k<len;k++)
{
itoa(i[k],tmp,10);
strcat(c,tmp);
}
}
int main()
{
int i[]={10,11,12};
char c[100]="";
IntToStr(i,c,sizeof(i)/sizeof(i[0]));
printf("%s
",c);
return 0;
}
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()
{
int a[] = {11,12,13};
int i;
char * s = (char *)malloc(32);
char * str = (char *)malloc(128);
str[0] = 0; //你是动态申请的空间,c语言不会初始化内容的,将第1个字符标记为结束符
for(i=0;i<sizeof(a)/sizeof(int);i++)
{
itoa(a[i],s,10);
printf("%s\n",s);
strcat(str,s);//原先没初始化的话 可能128空间内计算机都以为有内容的 所以一直会向后找,直到找到0再拼接
}
printf("%s\n",str);
free(s);//别忘了 动态申请的要自己释放 养成好习惯
free(str);//别忘了 动态申请的要自己释放 养成好习惯
}
如下程序,有不明白的地方继续追问:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int a[] = {10,11,12};
int i;
char s[100] = "";
char buf[100];
for (i = 0; i < sizeof(a)/sizeof(int); i++){
sprintf(buf, "%d", a[i]);//把a[i]转成字符串,存在buf里。
strcat(s, buf);//将buf拼接到s尾部。
}
puts(s);
system("pause");
return 0;
}
c语言编程怎么将int转为字符串类型?
在C语言编程中,若需将整型(int)数据转换为字符串类型,可借助于`sprintf`函数。此函数能将格式化数据输出至字符串中。以下示例代码展示了这一转换过程:代码示例中,`sprintf`函数将整型变量`num`转换为字符串格式,并将结果存储在`char`类型数组`str`中。格式化字符串中,`%d`表示整数以十进制形式...
C语言中,如何将一个数组中的数值转换成字符串输出?
1、首先写上注释内容,如下图所示。2、然后写上数据类型(char)+字符串名称,如下图所示。3、接下来需要在=后面写上字符串的内容,如下图所示。4、接下来需要将字符串的内容打印出来,如下图所示。5、接下来需要点击顶部的编译,如下图所示。6、接下来需要点击运行。7、这时候就可以看到刚才被定义...
c++中怎样编写一个函数把整型数字转换成字符串??
在C++中,将整型数字转换成字符串的过程涉及到将数字的每一位提取出来,然后将其转换为对应的字符。下面是一个具体的示例程序,展示如何实现这一过程:首先,我们需要包含必要的头文件并定义主函数。在本例中,我们使用了cstring库中的memset函数来初始化字符串数组str和str1,以确保它们被正确初始化为零...
c语言中如何将short,int,long,float这些类型的数值转换为字符串?
1、对于整型,各个平台有一些函数可以专门转换,比如itoa等。不过更通用的做法是使用sprintf函数。2、声明:int sprintf(char *dst, const char *format_string, ...);头文件为stdio.h。3、功能:sprintf是一个不定参数函数,根据format_string中提供的格式符,将后续参数转为字符串存储在第一个参数...
C++ 整型数组转换成字符串
include<iostream> using namespace std;int main(){ int a[10]={1,2,3,5,7,8,9,5,3,0};char str[256];for (int i=0;i<10;i++){ itoa(a[i],&str[i],10); \/\/itoa函数 } str[i]='\\0';cout<<str<<endl;return 0;} ...
C语言中,如何将一个数组中的数值转换成字符串输出?
情况分: 1.数组中每个元素都是0 ~ 9 的整数,可以分别将它们加48(‘0’的ascii码值)输出 2 。每个元素都是一个独立的数值,建议参考使用 itoa函数
C++中如何将整型变量转换为字符串?
2 头文件。stdlib.h 3 功能。将value的值,转换为字符串,并存到string中,如果转化后的字符串长度超过radix,那么只存radix位。4 样例。int i=1234;char buf[10];itoa(i, buf, 10);执行后buf内容为字符串"1234"。二、通过sprintf格式化输出到字符串中。itoa并不是C语言标准库函数,所以并不是...
C语言定义一个函数将一个整数(做为参数)变成字符串,每个字符之间加一个...
"%d",&a);for(i=0;ch[10]!='\\0';i++) \/\/这句毫无意义,或者你写错了,并且后面也缺少了大括号。ch[i]=aq(a); \/\/函数定义时有两个参数,这里调用却只有一个,不错才怪了 printf("%c",ch[i]);} 劝你还是要不重新做,要不看懂答案后再自己做,反正你写的实在问题太大 ...
C语言中,如何将一个数组中的数值转换成字符串输出?
char array[] = { 'h', 'e', 'l', 'l', 'o' };\/* 需要注意的是,这里没有终结符,故需要知道数组的 *\/ \/* 大小(数组的大小是编译时常量)*\/ char *dest_str; \/\/ 目标字符串 dest_str = (char *)malloc(sizeof(char) * (sizeof(array) + 1));\/* 为字符串分配堆空间 ...
在C++中如何编出一个函数将整型数转化为字符串形式输出?
把一个带符号的整数转换为一个ASCII字符串。数字字符的ASCII值有什么特点呢?它们是颠倒顺序排列的;字符”0”的ASCII值加上1等于”1”的ASCII值,以此类推。因此,数字字符的ASCII就等于这个数字加上字符”0”的ASCII值。(注意,字符”0”的ASCII值是一个不等于零的数值,而这个数值代表着字符”0”...