C语言中,如何将一个数组中的数值转换成字符串输出?

Python013

C语言中,如何将一个数组中的数值转换成字符串输出?,第1张

#include<stdio.h>

void IntToStr(int *i, char *c, int len)

{//i为整形数组,c为要存放字符的数组,len为整形数组元素个数

int k

char tmp[10]

for(k=0k<lenk++)

{

itoa(i[k],tmp,10)

strcat(c,tmp)

int main()

或:

#include <string.h>

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中首次出现的位置的运算叫做模式匹配。串的两种最基本的存储方式是顺序存储方式和链接存储方式。

参考资料来源:百度百科-字符串

C有“整数数组转化为字符串”的专用库函数char *itoa(int num,char *str,int radix)。声明一个存放转换后的字符串的二维字符数组,将整型数组的元素作为num来调用itoa函数,将结束存入二维数组即可。举例代码如下:

//#include "stdafx.h"//If the vc++6.0, with this line.

#include "stdio.h"

#include "stdlib.h"

int main(void){

    int a[8]={123,234,345,10,787,743891,123456789,0},i

    char x[8][11]={"",}

    for(i=0i<8i++){

        itoa(a[i],x[i],10)//将整数a[i]按十进制转换成字符串存入字符数组x[i]

        printf("%s ",x[i])//打出来看看......

    }

    printf("\n")

    return 0

}

#include <stdio.h>

void main()

{

int d[5]={4,5,3,2,5}

char a[80]

int i

for(i=0i<5i++)

a[i]=d[i]+'0'

a[i]='\0'//这个很重要,是字符串结束符

printf("%s\n",a)

}