C语言--自定义字符串输入/输出函数

C语言中字符/字符串的输入/输出除了调用库函数之外还可以自定义输入/输出函数。

1.代码:

#include 

#define String "Hello, C"

void put(const char *string)
{
    while (*string != '\0')
        putchar(*string++);
}

int main()
{
    put(String);
    
    return 0;
}

2.代码分析:

char类型的指针String最初指向传入参数的首元素,即字符串的首元素的地址,const使得传入的字符串不会被改变。当一个字符串传入时,先打印第一个字符,接着String的值增加1(++的优先级高于*),直到遇到“\0”才跳出循环。

测试结果:
在这里插入图片描述

3.拓展应用:统计字符串的个数(不包含’\0’)

#include 
#include 

#define String "Hello World"

int Count(const char *string)
{
    int count = 0;

    while (*string != '\0')
    {
        count++;
        string++;
    }

    return count;
}

int main()
{
    int count_strlen;
    int size_of;

    count_strlen = strlen(String);
    size_of = sizeof(String);

    printf("Count函数的统计结果:%d\n", Count(String));
    printf("strlen函数的统计结果:%d\n", count_strlen);
    printf("sizeof的统计结果:%d\n", size_of);

    return 0;
}

测试结果:
在这里插入图片描述

你可能感兴趣的:(C程序)