内存操作函数
2022/4/25 7:13:04
本文主要是介绍内存操作函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.strlen字符串求长度
//遇到\0停止
int len=strlen("abcdef");
printf("%d\n,len);
char arr[]={'a','b','c','d'};
int len = strlen(arr); //随机值 遇到f后面的\0停止
1.1如果要自己写一个strlen方法
a.计数器的方法
b.递归
c.指针-指针
#Include <stdio.h>
#include <assert.h>
int my_strlen(const char *str)
{
assert(str!=NULL); //判断是否是空指针
int count=0;
while(*str)
{
count++;
str++;
}
return count;
}
int mian(){
int len=strlen("abcdef");
}
1.2
if(strlen("abc")-strlen("abcdef)>0)
{
printf("1");
}
else
{
printf("0");
}
//返回的是无符号整数(两个strlen返回的都是无符号数,相减依然是无符号数) 所以是1
//默认返回类型的是size_t,用my_strlen()相减,返回类型是int返回 0
char* my_strcat(char *dest,const char * src)
{
char *ret=dest;
assert(dest);
assert(src);
//1.找到目的字符串的\0
while(dest)
{
dest++;
//2.追加字符串
while(*dest++==*src++)
{
;
}
}
}
strcmp比较两个字符串是否相等
strncat(arr1,arr2,4);在arr1后面,追加arr2的前四个字符,并且自动补\0
memory:内存拷贝
int arr1[]={1,2,3,4,5};
int arr2[5]={0};
memcpy(arr2,arr1,sizeof(arr1));
int arr[3]={1,2,3,4,5,6,7,8,9};
memmove(arr+3,arr,20);
可以将12345拷贝到原函数变成12123456789
这篇关于内存操作函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-01后台管理开发学习:新手入门指南
- 2024-11-01后台管理系统开发学习:新手入门教程
- 2024-11-01后台开发学习:从入门到实践的简单教程
- 2024-11-01后台综合解决方案学习:从入门到初级实战教程
- 2024-11-01接口模块封装学习入门教程
- 2024-11-01请求动作封装学习:新手入门教程
- 2024-11-01登录鉴权入门:新手必读指南
- 2024-11-01动态面包屑入门:轻松掌握导航设计技巧
- 2024-11-01动态权限入门:新手必读指南
- 2024-11-01动态主题处理入门:新手必读指南