百度抓取网站登录,怎么在自己电脑上建设网站,空间购买网站,以前有个自助建设网站C语言字符串长度统计函数strlen()的实现原理 分享到#xff1a;QQ空间新浪微博腾讯微博豆瓣人人网C标准库中有一个字符串长度统计函数strlen()#xff0c;用来统计字符串的长度#xff0c;它的实现与下面类似。 复制纯文本复制 #include stdlib.hsize_t strlen( cha…C语言字符串长度统计函数strlen()的实现原理 分享到QQ空间新浪微博腾讯微博豆瓣人人网 C标准库中有一个字符串长度统计函数strlen()用来统计字符串的长度它的实现与下面类似。 复制纯文本复制 #include stdlib.hsize_t strlen( char *string ){ int length 0; // 依次访问字符串的内容计算字符数直至遇到NUL终止符 while( *string ! \0 ) length 1; return length;} #include stdlib.h
size_t strlen( char *string )
{int length 0;// 依次访问字符串的内容计算字符数直至遇到NUL终止符while( *string ! \0 )length 1;return length;
} 两点注意 size_t 为stddef.h中定义的数据类型等价于 unsigned int它的取值必须大于等于0。while()循环条件中*string等价于*(string)。string是指针变量保存的是字符串的起始地址第一个字符的地址地址是一个整数可以进行算术运算加 1 后为下一个字符的地址。 在指针到达字符串末尾的NUL字节之前while语句中*string表达式的值一直为真。它同时增加指针的值用于下一次测试。这个表达式甚至可以正确地处理空字符串。 如果这个函数调用时传递给它的是一个NULL指针那么while语句中的间接访问将会失败。函数是不是应该在解引用指针前检查这个条件从绝对安全的角度讲应该如此。但是这个函数并不负责创建字符串。如果它发现参数为NULL它肯定发现了一个出现在程序其他地方的错误。 当指针创建时检查它是否有效是合乎逻辑的因为这样只需检查一次。这个函数采用的就是这种方 法。如果函数失败是因为粗心大意的调用者懒得检查参数的有效性而引起的那是他活该如此。 C语言统计输入的单词的个数 分享到QQ空间新浪微博腾讯微博豆瓣人人网 编写一个程序对标准输入进行扫描并对单词“the”出现的次数进行计数。进行比较时应该区分大小写所以“The”和“THE”并不计算在内。你可以认为各单词由一个或多个空格字符分隔而且输入行在长度上不会超过100个字符。 计数结果应该写到标准输出上。 声明—个长度为101个字节的缓冲区数组用于保存100个字节的输入和NUL终止符。strtok 函数用于逐个提取单词。 复制纯文本复制 // 计算标准输入中单词“the”出现的次数。字母是区分大小写的输入中的单词由一个或多次空白字符分隔。#include stdio.h#include string.h#include stdlib.h char const whitespace[] \n\r\f\t\v;int main (){ char buffer[101]; int count; char *word; count 0; // 读入文本行直到发现EOF while( gets(buffer) ) { // 从缓冲区逐个提取单词直到缓冲区内不再有单词。 for( word strtok ( buffer, whitespace ); word ! NULL; word strtok( NULL, whitespace ) ){ if( strcmp( word, the ) 0 ) count 1; } } printf(%d\n, count); return EXIT_SUCCESS;}