在笔试面试中经常会遇到让你实现C语言中的一些函数比如strcpy,atoi等

1. atoi

把字符串s转换成数字

int Atoi( char *s )
{int num = 0, i = 0;int sign = 1;for( i=0; isspace(s[i]); i++ );sign = (s[i] == '-')? -1:1;if( s[i] == '+' || s[i] == '-' )i++;for( ;isdigit(s[i]); i++ ){num = 10*num + (s[i]-'0');}return sign*num;
}

2. strcpy(char *src, char *dst)

把src复制到dst中

int Strcpy(char* src, char *dst)
{
//  register char *tmp;int i = 0;while( src[i]!= NULL ){dst[i] = src[i++];}
}

3.itoa( int n, char *s )

把数字转化成字符串

void Reverse( char *s )
{int size = 0;char tmp;while( s[size] != NULL )size++;size--;int i=0;while( i <= size>>1 ){tmp = s[i], s[i] = s[size-i], s[size-i] = tmp;i++;}
}void ItoA( int n, char *s )
{int sign = 1;if( n < 0 ){sign = -1;       n = -n;}int i=0; do{s[i++] = n%10 + '0';}   while((n/=10) > 0);if( sign == -1 )s[i++] = '-';s[i] = '\0';Reverse( s );
}

4. atof( char * s )

把字符串转化成double类型

double AtoF( char *s )
{int sign = 1;int i = 0;for( i=0; isspace(s[i]); i++ );sign = (s[i] == '-')? -1:1;if( s[i] == '+' || s[i] == '-' )i++;double num = 0.0;double pow = 1.0;//整数 for( ;isdigit(s[i]); i++ )num = num*10 + (s[i]-'0');for( i++; isdigit(s[i]); i++ ){num = num*10 + (s[i]-'0');pow *= 10;}return sign * (num/pow);
}

转载于:https://www.cnblogs.com/suncoolcat/p/3341662.html

C函数的实现(strcpy,atoi,atof,itoa,reverse)相关推荐

  1. 字符串的总结(atoi和itoa函数的实现)

    目录: 一.常见的字符串函数(strlen,strcpy,strcat,strcmp) 二.关于atoi函数的实现 三.关于itoa函数的实现 一.常见字符串的函数 (strlen,strcpy,st ...

  2. atoi() 与 itoa()函数用法

    itoa()函数的原型为: char *itoa( int value, char *string,int radix); itoa()函数有3个参数:第一个参数是要转换的数字,第二个参数是要写入转换 ...

  3. atoi和itoa函数实现

    atoi函数是C语言库提供的,是把字符串转换成整型数和把字符串转换成整型数.而itoa函数是广泛应用的非标准C语言扩展函数,由于它不是标准C语言函数,所以不能在所有的编译器中使用,它的功能是把一整数转 ...

  4. c++实现atoi()和itoa()函数(字符串和整数转化)

    (0) c++类型所占的字节和表示范围 c 语言里 类型转换那些事儿(补码 反码) 应届生面试准备之道 最值得学习阅读的10个C语言开源项目代码 一:起因 (1)字符串类型转化为整数型(Integer ...

  5. 【造轮子】实现 atoi、itoa 函数

    1. atoi 函数 1.1 函数简介 atoi 函数为 C 库函数之一,用于把字符串转换为对应的整形十进制数字. 原型:int atoi (const char* str); 所属头文件:<s ...

  6. C语言之字符串探究(七):atoi、itoa——整型数字和字符串的相互转换

    相关博文:C++之char和string字符串类探究 相关博文:C语言之数组探究(一):定义.大小.初始化.访问和三要素 相关博文:C语言之字符串探究(一):字符串与字符数组 相关博文:C语言之字符串 ...

  7. 如何快速区分Atoi和Itoa

    许多语言标准库都会提供字符串和数字互相转换的函数,比如Go语言的的strconv库就提供了Atoi和Itoa两个函数实现字符串和数字的转换. 但是很多人都记不住这两个函数究竟哪个是字符串转数字,哪个是 ...

  8. 编程题:编写一个函数string_copy()完成strcpy()的作用,并验证。

    编程题:编写一个函数string_copy()完成strcpy()的作用,并验证. #include<stdio.h> void string_copy(char *s1,char *s2 ...

  9. (C语言)常用的字符串函数介绍(strcpy,strncpy,strcat,strncat,strcmp,strncmp,strchar,strlen)非常详细

    理解 strcpy,strncpy,strcat,strncat,strcmp,strncmp,strchar,strlen这些函数,可以帮助我们更好的对字符串进行操作,做到玩转字符串. 目录 1.s ...

最新文章

  1. 一个已经存在 10 年,却被严重低估的库!
  2. 29 个你必须知道的 Linux 命令
  3. 工具类用得好,下班下的早
  4. 未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。
  5. 童年各大名场面~ | 今日最佳
  6. 测试String, StringBuilder,StringBuffer 的数据,我居然发现这些了~~
  7. linux资源使用统计指南,指南:工作量分析文档
  8. 12.2 新特性:RMAN 自动恢复到 REDO 终点的步骤简化
  9. 2010-11-23 network virtualization papers(2)
  10. php流水系统,php流水账txt数据库版
  11. 魔兽争霸如何修改快捷键
  12. axure中出现小手_Axure高保真滑动拼图解锁实例教程
  13. 用ChatGPT处理word表格数据:直接采用ChatGPt和利用ChatGPT编写python脚本两种方法
  14. CAD转JPG图片,在线转换成高质量彩色图片
  15. SHELLPUB在线查杀更新公告(文末抽奖)
  16. Linux下Mysql启动、关闭、重启指令
  17. Vulkan学习(十五): 总结
  18. EMQ-保留消息 概述和案例
  19. 这套动捕方案居然只用一个摄像头?
  20. 如何用cmd运行C程序

热门文章

  1. 马昕璐201771010118《面向对象程序设计(java)》第七周学习总结
  2. $动态规划系列(2)——找零钱问题
  3. context:component-scan扫描使用的use-default-filters
  4. Java JNI初探
  5. Python的逻辑运算符and小析
  6. hdoj 2041 超级阶梯
  7. verycd重整——CBT系列
  8. 如何在Java中使用表达式_如何在java中计算表达式?
  9. 微信小程序获取当前时间戳、获取当前时间、时间戳加减
  10. no applicable action for [springProfile], current ElementPath is [[configuration][springProfile]]