php函数源代码 C编写 【持续更新】

strlen()

获取字符串长度,成功则返回字符串 string 的长度;如果 string 为空,则返回 0。

#include<stdio.h>
#include<stdlib.h>
#define N 1000
int count = 0;

int strlen(char *str)
{
    int num = 0;                    //定义一个计数器
    while(‘\0‘ != *str++)
    {
        num++;
    }
    return num;
}

void test(char *str)
{
    printf("所要测试的字符串为: %s\n",str);
    count = strlen(str);                            //调用函数
    printf("所输入的字符串长度为:%d\n\n",count);
}

void  main()
{
    char str1[] = "hello world!";    //这样的赋值方式会有在尾部自动一个‘\0‘
    char *str2 = "hello world!";        //这样的赋值方式会有在尾部自动一个‘\0‘
    char str3[20] = "world hello!";   //这样的赋值方式会在剩余的位置全部自动添加‘\0‘
    char str4[N] = {0};
    test(str1);
    test(str2);
    test(str3);

    printf("请输入所要测试的数组:\n");
    gets(str4);            //此函数会在最后添加NULL字符 即‘\0‘
    test(str4);
    system("pause");
}

strcpy()

head.h

#include<stdio.h>
#include<string.h>
#define N 100
void strcpy1(char *str_cpy, char const *str);

_strcpy().c

#include"head.h"

void strcpy1(char *str_cpy,char const *str)  //为了保证主数组的只读性,所以加"const"修饰
{
    while(*str != ‘\0‘)
    {
        *str_cpy = *str ;
        str_cpy ++;
        str++;
    }
    *str_cpy = ‘\0‘;       //添加结束符
}

main.c

#include"head.h"

void main()
{
    char str[N];
    char str_cpy[N] ;
    printf("请输入所要主字符串数组:\n");
    scanf("%s",&str);

    strcpy1(str_cpy,str);      //复制
    printf("复制前的主字符串为的%s\n",str);
    printf("复制后新字符串为的%s\n",str_cpy);

    getchar();
    getchar();
}
时间: 2024-10-27 10:56:22

php函数源代码 C编写 【持续更新】的相关文章

# OpenGL常用函数详解(持续更新)

OpenGL常用函数详解(持续更新) 初始化 void glutInit(int* argc,char** argv)初始化GULT库,对应main函数的两个参数 void gultInitWindowSize(int witth,int height)指定GULT窗口产生的窗口的大小 void gultInitWindowsPosition(int x,int y)指定窗口产生的位置,以像素为单位,默认在左上角 void gultInitDisplayMode(unsigned int mod

php中自己总结的函数(持续更新)

每一种编程语言在用的过程中都会发现有时候要一种特定需求的功能函数,结果没有内置这样的函数,这个时候就需要自己根据已有函数编写尽可能简单的函数,下面是我在做php相关工作时积累下的函数,会持续更新,您要是有好的也可以推荐给我,我在这里统一展示给大家. 第一,生成随机字符串 代码如下面所示,要注意以下,查看手册可以看到,php在版本4.2.0以前生成随机数时,需要先给随机数发生器播种,PHP_VERSION>4.2.0的版本,系统自动完成播种工作,所以这里要做下判断. <?php function

JS函数集锦 持续更新..

//1.打开窗口function WinOpen(url, heightV, widthV) { var iTop2 = (window.screen.availHeight - 20 - heightV) / 2; var iLeft2 = (window.screen.availWidth - 10 - widthV) / 2; var params = 'menubar:no;dialogHeight=' + heightV + ';dialogWidth=' + widthV + ';d

【前端】Util.js-ES6实现的常用100多个javaScript简短函数封装合集(持续更新中)

Util.js (持续更新中...) 项目地址: https://github.com/dragonir/Util.js 项目描述 Util.js 是对常用函数的封装,方便在实际项目中使用,主要内容包含:数组类.浏览器类.日期类.函数类.数学类.媒体类.节点类.对象类.字符串类.类型检测类.正则表达式类等内容. 使用方法 1. 引入Bable transpiler以保证支持ES6 <script type="javascript/text" src="./browser

自己总结的 iOS ,Mac 开源项目以及库,知识点------持续更新

自己在 git  上看到一个非常好的总结的东西,但是呢, fork  了几次,就是 fork  不到我的 git 上,干脆复制进去,但是,也是认真去每一个每一个去认真看了,并且也是补充了一些,感觉非常棒,所以好东西要分享,为啥用 CN 博客,有个好处,可以随时修改,可以持续更新,不用每次都要再发表,感觉这样棒棒的 我们 自己总结的iOS.mac开源项目及库,持续更新.... github排名 https://github.com/trending,github搜索:https://github.

软件测试知识点汇总目录(持续更新)

个人在工作之余通过word文档长期持续更新工作中需要涉及到的一些理论和技术知识.所谓好记记性,不如乱笔头.根据工作年限和职位的变化,以及就职公司参与的产品或者项目所涉及到的测试方面的技能不一样,会存在有些之前的技能不经常使用,会导致生疏的现象.虽然不至于归零,但是一旦需要使用的时候,有一个相对比较完整规范的文档来应急阅读来回顾其使用等是很有帮助的.比在网上搜索出来的相关零散的不完整的知识点方便的多. 文档创建年限不是很长,有很多知识项没有写入文档或者还没有来得及编写,需要在后续持续更新.文档编写

android开发开源宝贝——持续更新。。。

2016年11月11日更新 http://www.apkbus.com/forum-417-1.html http://p.codekk.com/detail/Android/hejunlin2013/LivePlayback www.codekk.com https://github.com/Trinea/android-open-project Android 开源项目分类汇总 我们的微信公众号:codekk.二维码如下: 专注于 Android 开源分享.源码解析.框架设计.Android

Python中常用的一些操作总结(持续更新)

写在前面的话 其实也没有什么可以写的,或者说完全没有价值.因为你只要动一动手指就可以在Google上找到我要写的这些东西.只是我还不习惯好久没有碰我的blog,但是我又不想写没有价值的东西.或许有价值,只是在我一年两不编程的情况下,我会忘记那些我以前很熟悉的操作是怎么完成的,或许混到那个地步我的人生就开始悲剧了吧.总之,成长成我想要的样子我还是需要很长的路要走. 这一篇是会持续更新的,至少为了保证它看起来不那么水,也要让它持续更新 python中的进制转换 1.其他进制转换为10进制 所有的进制

java开发中遇到的问题及解决方法(持续更新)

摘自 http://blog.csdn.net/pony12/article/details/38456261 java开发中遇到的问题及解决方法(持续更新) 工作中,以C/C++开发为主,难免与其他服务和Web进行交换,Java开发必不可少,又不想动用Eclipse大家伙,只能自己动手编写脚本进行Java代码的编译和运行,期间遇到的一些问题,记录下来供自己和大家参考.1)软件包不存在/软件包 javax.jms 不存在    这是由于javac编译时找不到javax.jms所在的软件包,因此将