zoukankan      html  css  js  c++  java
  • C中的字符串实例

    1.#include <stdio.h>
    #include <assert.h>

    size_t strlen(const char* s)
    {
        return ( assert(s), (*s ? (strlen(s+1) + 1) : 0) );
    }

    int main()
    {
        printf("%d ", strlen( NULL));
        
        return 0;
    }

    2.#include <stdio.h>
    #include <assert.h>

    char* strcpy(char* dst, const char* src)
    {
        char* ret = dst;
        
        assert(dst && src);//断言一定要调用assert,这是安全编程的思想,错误处理的思想
        
        while( (*dst++ = *src++) != '' );
        
        return ret;
    }

    int main()
    {
        char dst[20];
        
        printf("%s ", strcpy(dst, "Delphi Tang!"));
        getch();    
        return 0;

    }

    3.#include <stdio.h>
    #include <malloc.h>

    int main()
    {
        char s1[] = {'H', 'e', 'l', 'l', 'o'};
        char s2[] = {'H', 'e', 'l', 'l', 'o', ''};
        char* s3 = "Hello";          //只读存储区
        char* s4 = (char*)malloc(6*sizeof(char)); //堆
        
        s4[0] = 'H';
        s4[1] = 'e';
        s4[2] = 'l';
        s4[3] = 'l';
        s4[4] = 'o';
        s4[5] = '';
        
        free(s4);
        
        return 0;
    }

    4.#include <stdio.h>
    #include <assert.h>

    size_t strlen(const char* s)
    {
        size_t length = 0;
        
        assert(s);
        
        while( *s++ )
        {
            length++;
        }
        
        return length;
    }

    int main()
    {
        printf("%d ", strlen("123456789"));
        
        return 0;
    }

  • 相关阅读:
    SQL 通配符
    正则表达式
    与运算(&)、或运算(|)、异或运算(^)、右移运算符(>>>)本质介绍
    博客园博客目录自动生成(页面目录)
    Linux查看并杀死被占用的端口
    Eclipse的环境配置
    L-Rui
    Web页面弹出窗口代码大全
    linux-用户
    linux-网络
  • 原文地址:https://www.cnblogs.com/wxb20/p/6150535.html
Copyright © 2011-2022 走看看