学习笔记--数组与字符串相互转化

文章介绍了在LabVIEW课堂上学到的数组、簇和矩阵转换,强调了在单片机编程中字符串和数组转换的重要性。提出了在串口通信中如何将数组转换为字符串的问题,讨论了一种通过malloc动态分配内存来实现数组到字符串转换的方法,并给出了相应的C语言代码示例,同时展示了从字符串回转到数组的函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习笔记,记录为主

在labview课堂上,看到数组与簇,数组与矩阵等各式各样的转换函数。回想在单片机学习中数据类型转化最多的是字符串和数组之间的变换,在串口发送时,能够将字符串中元素按位以数组元素的方式响应,那么我想将一个数组串口打印呢?第一反应肯定是将其转ascll码再转10进制,有些繁琐并且数据不连贯。在数据结构链表创建时,使用到malloc这个关键字,数组名能表示地址,那我重新为字符串开辟一段地址空间不就实现数组到字符串之间的转换了

>>数组转字符串

char *str(char str_num[],int length)//传入一个字符型数组(+‘0’)并且确定好其长度
{
	char *s;
	s=malloc((length+1)*sizeof(char));//定义一个字符指针并给它分配length+1个内存单元,
    for(int i = 0;i<length;i++) s[i]=str_num[i];
    s[length]=0;//总共有length个元素,字符串是以‘/0’结尾的,0不计入字符串长度,但是会计入字符数组长度
    return s;  //返回一个字符串
}

 >>字符串转数组

void str_turn(char *str)  //字符串转数组
{
	unsigned char length;
	length = strlen[str];
	char num[length];
	for(int i=0;i<length;i++)	
        {
        num[i] = str[i];
        }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值