字符库函数

车牌字符库 用于车牌识别中字符分割的车牌字符库,拥有4000多张照片 立即下载
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
#include<assert.h>
/*
void *memcpy(void *dest,const void *src,
   int count 
);
count:字节数
*/
void *Mymemcpy(void *dest,const void *src,int count )
{
	while(count != 0)
	{
		*((char*)dest) = *((char*)src);
		((char*)dest)++;
		((char*)src)++;
		count--;
	}
}
void *Mymemmove(void *dest,const void *src, int count )
{
	void *p = dest;
	if(src > dest)
	{
		while(count != 0)
		{
			*((char*)dest) = *((char*)src);
			((char*)dest)++;
			((char*)src)++;
			count--;
		}
	}
	else
	{
		while(count--) 
		{
			 *((char*)dest+count)= *((char*)src+count);
			//count--;
		}
	}
	return p;
}
void *Mymemmove2(void *dest,void *src,int count)
{
	void *ret = dest;
	if(dest < src)
	{
		while(count--)
		{
			*(char*)dest = *(char *)src;
			((char*)dest)++;
			((char*)src)++;
		}
	}
	else
	{
		while(count--)
		{
			*((char*)dest+count) = *((char*)src+count);
		}
	}
	return ret;
}
int main()
{
	int arr[] = {1,2,3,4,5,6,7};
	int arr2[10] = {0};
	Mymemmove(arr+2,arr,16);
	//Mymemcpy(arr,arr+2,16);
	//内存拷贝函数
	//int*p = (int *)memcpy(arr2,arr,16);
	//int i = 0;
	//for(i = 0;i < 10;i++)
	//{
	//	printf("%d ",p[i]);//*(p+i)
	//}
	return 0;
}


#if 0
char *Mystrcpy(char *dest,const char *src)
{
	/*char *p = dest;
	while(*src != '\0')
	{
		*dest = *src;
		dest++;
		src++;
	}
	*dest = '\0';
	return p;   0' '\0' 0 NULL*/ 
	char *p = dest;
	while(*dest++ = *src++){}
	return p;
}
char *Mystrcat(char *dest,const char *src)
{
	char *p = dest;
	assert(dest!= NULL && src != NULL);
	while(*dest != '\0')
	{
		dest++;
	}
	//dest指向了\0
	while(*dest++ = *src++){}
	return p;
}
//
char *Mystrncat(char *dest,const char *src,int n)
{
	return NULL;
}

char *Mystrncpy(char *dest,const char *src,int n)
{return NULL;}
const char *Mystrstr1 (const char *str1,const char *str2 )
{
	while(*str1 != '\0')
	{
		const char *p = str1;
		while(*str1!= '\0' && *str2 != '\0'&&*str1 == *str2)
		{
			str1++;
			str2++;
		}
		if(*str1 == '\0')
		{
			return NULL;
		}
		if(*str2 == '\0')
		{
			return p;
		}
		str1++;
	}
	return NULL;
}
//朴素算法--      KMP--
const char *Mystrstr (const char *str1,const char *str2 )
{
	const char *s1 = NULL;
	const char *s2 = NULL;
	const char *start = str1;
	while(*start != '\0')
	{
		s1 = start;//s1回退到上一次的下一个位置
		s2 = str2;//s2回退到str2的起始位置
		while(*s1!= '\0' && *s2 != '\0'&&*s1 == *s2)
		{
			s1++;
			s2++;
		}
		if(*s1 == '\0')
		{
			return NULL;
		}
		if(*s2 == '\0')
		{
			return start;
		}
		start++;
	}
	return NULL;
}
const char *Mystrchr(const char *src,char ch)
{
	while(*src != '\0')
	{
		if(*src == ch)
		{
			return src;
		}
		src++;
	}
	return NULL;
}
//str1和str2比较  
int Mystrncmp(const char *str1, const char *str2,int n)
{}
int Mystrcmp(const char *str1, const char *str2)
{
	//ab       abc      abc     ab
	while(*str1 == *str2)
	{
		if(*str1 == '\0')
		{
			return 0;
		}
		str1++;
		str2++;
	}
	if(*str1 > *str2)
	{
		return 1;
	}
	else
	{
		return -1;
	}
}

int main()
{
	char *dest= "abc";//主串
	char *src = "abc";//子串
	printf("%d\n",strncmp("abcd","abcd",3));//0
	printf("%d\n",strncmp("abde","abce",1));//0
	printf("%d\n",strncmp("abce","adcd",3));//-1
	//printf("%s\n",Mystrstr(dest,src));

	//printf("%s\n",strncpy(dest,src,6));
	//printf("%s\n",strncat(dest,src,3));
	return 0;
}


int main()
{
	int money = 0;
	int empty = 0;
	int total = 0;
	scanf("%d",&money);
	total = money;
	empty = money;
	while(empty > 1)
	{
		total += empty/2;
		empty = empty/2+empty%2;
	}
	printf("%d\n",total);
	return 0;
}

void Fun(int *px,int *py)
{

}
int main()
{
	int x =0;
	int y = 0;
	Fun(&x,&y);

	return 0;
}

int main()
{
	int arr[] = {2,4,3,6,3,2,5,5};
	int len = sizeof(arr)/sizeof(arr[0]);
	//1、异或数组中的所有数字
	int i = 0;
	int num = 0;
	int pos = 0;//pos用来保存第i位为1的位置
	int x = 0;
	int y = 0;
	for(i = 0;i < len;i++)
	{
		//num = num^arr[i];
		num ^= arr[i];
	}
	//2、num肯定是异或的结果。
	//--->找到num二进制第一位为1的位数
	
	for(i = 0;i < 32;i++)
	{
		if(((num>>i) & 1)  == 1)
		{
			pos = i;
			break;
		}
	}
	//3、遍历数组,分为两个子数组
	for(i = 0;i < len;i++)
	{
		if(((arr[i]>>pos) & 1) == 1)
		{
			x ^= arr[i];
		}
		else
		{
			y ^= arr[i];
		}
	}
	printf("%d,%d\n",x,y);
	return 0;
}
#endif

 

车牌字符库素材(可用于模拟车牌、模板匹配等) 有蓝牌、黄牌、新能源车牌的单一字符文件,从0~9、A~Z、藏川鄂甘赣贵桂黑沪吉冀津晋京辽鲁蒙闽宁青琼陕苏皖湘新渝豫粤云浙等。按照最新国标要求,不提供I和O的单一字符。 立即下载

相关推荐

34个车牌字符库-用于车牌识别

34个车牌字符库-用于车牌识别

MySQL 字符集概念与原理及如何配置字符集 - 超详细图文详解

MySQL 字符集概念与原理及如何配置字符集?我们在使用 MySQL 的过程中,经常会碰到诸如乱码之类的问题。字符编码与字符集密切相关,MySQL 支持种类繁多的字符集类型,这些字符集到底如何影响 MySQL 数据存储与数据在客户端与服务端之间的传输的呢?我们该如何选择并配置正确的字符集?你真的理解 character_set_client、character_set_connection 和 character_set_results 三个变量的含义吗?那就通过这篇文章来帮你捋清细节和解除困扰吧!

指尖流连敲击梦想,代码行行承载远方! 1万+

车牌识别字符库

很全的一个车牌识别的字符库,包括汉字,字母,数字,20*40大小,规整,清晰

C语言字符和字符串库函数

C语言中,字符串通过字符数组实现的,所有字符串均以空字符(‘\0’)收尾,字符串的值表示首字符的地址,所以,字符串就是指针,指向首字符的指针。以上三个strcpy、strcat和strcmp函数是长度不受限制的字符串库函数,以下三个strncpy、strncat和strncmp函数是长度受限制的字符串函数。功能是比较两个字符串,第一个字符串大于第二个字符串,则返回大于0的数字;由一串字符组成,字符可以是字母、数字或者+、-、*、/ 和 # 之类的各种特殊字符,C语言中,字符串常量被写在一对双引号中,例如。

weixin_45102403的博客 288

Android14_MTK调试LCD屏功能

android14 MTK平台调试LCD屏

m0_37786046的博客 1471

佳能C3025打印机扫描方法

佳能C3025彩色打印机扫描方法 步骤一、如果打印机处于休眠状态,可按图中标记的按钮唤醒打印机; 然后点击屏幕上的【扫描】 步骤二、扫描类型选择【文件】 步骤三、点击屏幕上的【地址簿】 步骤四、此时屏幕胡看到名字,如果看不到自己的名字,可往下滑动直到看到自己的名字,然后点击自己的名字,再点击右下角的【应用】 步骤五、点击【发送设置】,可看到文件格式为PDF,点击可以选择JPEG的图片格式。...

weixin_46019317的博客 2万+

【c基础】常用字符串库函数

字符串库函数

hutaotaotao的博客 3059

深入解析SGLang框架:从架构设计到核心组件实现

本文深入解析了SGLang框架的架构设计与核心组件实现。SGLang是一个专为大语言模型推理设计的高效框架,其核心优势在于清晰的分层架构、高效的调度策略以及精细的内存管理。文章详细剖析了其客户端接入、服务器端调度、模型执行引擎及Tokenizer/Detokenizer管理器等关键组件,揭示了其实现高性能推理的内部机制。

coffee的博客 576

C语言——常用字符串库函数的介绍

以下函数的使用均需要包含头文件求字符串长度函数strlen长度不受限制的字符串函数长度受限制的字符串函数字符串查找函数错误信息报告函数strerror在C语言中,对字符串的处理是十分频繁的。但是,C语言本身是没有字符串类型的,通常字符串被存放在字符数组和常量字符串中。唯一标识字符串的结束标志是**‘\0’**字符。补充:常量字符串通常存放在内存中的文字常量区内,常量字符串的内容不可以被修改。

sinzz的博客 2581

VSCode + Copilot下:配置并使用 DeepSeek

以下是关于在中,通过插件配置并使用系列模型 () 的完整汇总指南。

jerwey的博客 1万+

Android开发中StateFlow与LiveData的5个关键区别及实战避坑指南

本文深度解析了Android开发中StateFlow与LiveData的5个核心区别,包括设计哲学、生命周期管理、值更新策略、线程模型及协程生态整合。通过实战代码对比,为开发者在现代MVVM架构下的状态管理选型提供清晰的决策指南和避坑建议,帮助构建更健壮、可测试的应用。

weixin_29012677的博客 402

字符库strlen和stecmp函数实现

字符库的头文件是#include<string.h>我们在进行C语言编程的时候经常会使用到一些字符库的函数,比如:strlen,strcpy,strcmp等等。今天,我们来学习一下如何去实现一些常用的字符库函数。 首先是strlen,该函数是用来统计字符串所包含字符的个数(不包括"\0"),根据其使用方法,我们不难猜测,该函数其实是一个计数函数。 我们首先创建一个目标字符串用以检验我们稍后编写的长度函数: 定义完成以后,我们开始编写函数内部: 首先我们定义一...

lingxu6的博客 550

YOLOv8首发优化:遥感目标检测 | 专为低质量遥感图像设计的边缘 - 高斯聚合(EGA)模块,解决低空间分辨率、传感器噪声、目标模糊、低光照退化和部分遮挡等限制

一种轻量级网络,其创新性地整合了专为低质量遥感图像设计的边缘 - 高斯聚合(EGA)模块。

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 487

C语言字符库函数模拟实现

C语言的字符库函数是处理字符串和内存操作的基础工具,广泛应用于各种程序中。这些函数在标准库<string.h>中定义。通过模拟实现这些函数,可以更好地理解它们的内部逻辑和实现原理。本文主要实现了strcmp/strcpy/strcat/strstr/memcpy/memmove等函数的模拟。

My__Space的博客 1020

AutoSAR配置视频讲解:总目录

AutoSAR实验视频讲解:闪烁一颗LED实验【总目录】 欢迎大家来到雪云飞星的《AutoSAR实验视频讲解》,本专栏是一个关于AutoSAR的闪烁LED灯的实验课程,一共8节课,每节课的视频都放在文章最后,传送门如下: 前言 AutoSAR实验视频讲解:简介 EB 的Mcal配置 AutoSAR实验视频讲解:Mcal配置 DaVinci Cfg配置 AutoSAR实验视频讲解:新建DaVinci工程 AutoSAR实验视频讲解:Os配置(预计2021-3-10更新) AutoSAR实验视频讲解:检查校验报

雪云飞星的博客 2万+

从0到全栈:C#/.NET/.NET Core终极学习路线——2025年开发者必修的12个阶段与30个实战项目

【代码】从0到全栈:C#/.NET/.NET Core终极学习路线——2024年开发者必修的12个阶段与30个实战项目。

墨夶的博客 2041

字符函数和字符库函数

/strlen//用来求字符串长度的,统计strlen到\0之前出现的字符//定义strlen函数//指针截用方式//对str进行访问截用,保证其指针可行性assert(str!= NULL);str++;//递归方式assert(str!= NULL);if (*str!= '\0')//1+上从第二个字符串开始数的字符数就是总字符长度elsereturn 0;//指针减指针的方式。

2401_88869769的博客 1133

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

c++primer plus字符库函数和条件运算符

1 字符库函数cctype c++从c语言那儿继承了一个与字符相关的、非常方便的函数软件包,它可以简化诸如确定字符是否为大写字母、数字、标点符号等工作,这些函数原型是在头文件cctype中定义的。 具体函数定义见书P179 2 ?:运算符即条件运算符 它是c++中唯一一个需要三个操作数的运算符,通用格式如下:express1 ? express2 : express3 如果express

fh2627的博客 316

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

字符库重要函数学习

在字符串1中搜索字符串2,返回在字符串1中的字符串2的起始地址。memchr只能搜索一个字符,strstr可以搜索一个字符串。和strstr结合起来可以实现 ,搜索某个值然后取出比较。可以比较两个字符串指定长度的值,是否一致。在实际应用中比较常用。从返回的字符数组中获取值。解析出 city 的值。

ABUCC7的博客 290

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

C语言关于字符库ctype.h函数库

smartab的博客 598

C语言字符函数和字符库函数(一)

C语言关于字符串的函数的其中一部分

weixin_57418095的博客 755

常用字符库函数1_cctype

cctype或ctype.h isalpha(ch)与ispunct(ch) 如果ch为字母那么 isalpha返回一个非零值,否则返回0 如果ch为字符那个ispunct返回true if((ch >= 'a' && ch <='z')||ch >= 'A' && ch <='Z')) 可以用 if(isalpha(ch))代替 isalnum() 如果参数是字母数字,即字母或数字,该函数返回true isalpha() 如

weixin_47779950的博客 309

C语言【字符库函数模拟实现】

本文欲实现五个常用的库函数,旨在提升初学者对字符串的理解和使用。希望本文对读者有所帮助。

qq_70199082的博客 662

c语言了解字符库函数的功能

/ 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回非0值,否则返回0。// 若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z')。// 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0。// 若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')// 若ch是小写字母('a'-'z')返回非0值,否则返回0。// 若ch是大写字母('A'-'Z')返回非0值,否则返回0。

qq_45666522的博客 132

C语言字符函数和字符库函数(二)

C语言中一些剩下的字符函数和字符库函数

weixin_57418095的博客 463

C/C++, 字符库函数

头文件#include 、#include 1. bool  isalnum(char  c) 判断一个字符是否为字母或数字 2. bool isalpha(char c) 判断一个字符是否为字母 3. bool isdigit( char c) 判断字符是否为数字 4. bool iscntrl(char c) 判断字符是否为控制符 5.bool isl

zk031的博客 370
上一篇: java中求圆的面积和球的体积
下一篇: 通讯录
王翔乐
博客等级 码龄8年 6粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值