内存、字符串一些简单函数

本文介绍了字符串与整型、长整型、浮点型之间的转换函数如itoa(), atof(), atoi(),以及内存操作函数如memset(), memcpy()。还涵盖了sscanf和sprintf的使用实例,展示了如何处理字符串解析和格式化。
摘要由CSDN通过智能技术生成

一、字符串与基本数据类型的转换 

● itoa():将整型值转换为字符串。
● ltoa():将长整型值转换为字符串。
● ultoa():将无符号长整型值转换为字符串。
● gcvt():将浮点型数转换为字符串,取四舍五入。
● ecvt():将双精度浮点型值转换为字符串,转换结果中不包含十进制小数点。
● fcvt():指定位数为转换精度,其余同ecvt()。

以itoa为例 

int num = 100;        
char str[25];
itoa(num, str,10);     //10表示十进制

● atof():将字符串转换为双精度浮点型值。
● atoi():将字符串转换为整型值。
● atol():将字符串转换为长整型值。
● strtod():将字符串转换为双精度浮点型值,并报告不能被转换的所有剩余数字。
● strtol():将字符串转换为长整值,并报告不能被转换的所有剩余数字。
● strtoul():将字符串转换为无符号长整型值,并报告不能被转换的所有剩余数字。

以atoi为例子

int num;
char str[1000];
fgets(str,sizeof(str),stdin);
num=atoi(str);
printf("%d",num);

 sprintf与sscanf

sprintf    它把结果输出到指定的字符串中

char c[100]
sprintf(c,"%d",100);          //表示将100以整数型存入c字符串中

sscanf

sscanf和scanf的区别:scanf是以键盘作为输入源,sscanf是以字符串作为输入源。 

例子挺多的  记几个比较好用的

取到指定字符为止的字符串。

char str[100];
char str1[100];      
fgets(str1,sizeof(str1),stdin);           
sscanf(str1,"%[^,]",str);               //str1为输入源 以,(指定字符)为止取字符串到str中去
printf("%s",str);

将表示数字的字符串转换成整型变量

int n;
sscanf("123","%d",&n);

取仅包含指定字符集的字符串



//只取数字和小写字母

    char str[100];
    sscanf("123456fengxinBLOG","%[1-9a-z]",str);
    puts(str);

...............(发现这个好像有点好用)

二、内存的一些简单函数

1、memset

void *memset(void *s,int c,size_t n)

 将已开辟内存空间 s 的首 n 个字节的值设为值 c

2.memcpy

void *memcpy(void *destin, void *source, unsigned n);

作用是:以source指向的地址为起点,将连续的n个字节数据,复制到以destin指向的地址为起点的内存中。
函数有三个参数,第一个是目标地址,第二个是源地址,第三个是数据长度。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zzzerotwo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值