C语言--自定义字符串输入/输出函数
C语言中字符/字符串的输入/输出除了调用库函数之外还可以自定义输入/输出函数。
1.代码:
#include <stdio.h>
#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 <stdio.h>
#include <string.h>
#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;
}
测试结果:
还没有评论,来说两句吧...