我在这里查看 strlen 代码,我想知道代码中使用的优化是否真的有必要?例如,为什么像以下代码一样的东西不能同样地或更好地工作呢?unsigned long strlen(char s[]) { unsigned long i; for (i = 0; s[i] != '\0...
我在MySQL数据库中有一个描述字段,在两个不同的页面上访问数据库,一个页面显示整个字段,但在另一个页面上,我只想显示前50个字符。如果描述字段中的字符串少于50个字符,则不会显示...,但如果超过50个字符,则会在第50个字符后显示... 示例(完整字符串): Hello, this i...
我不确定以下代码是否会导致冗余计算,或者这是编译器特定的吗?for (int i = 0; i < strlen(ss); ++i) { // blabla } 当i增加时,strlen()会每次被计算吗?
#include <stdio.h> #include <string.h> int main(int argc, char *argv[]) { char string[] = "october"; // 7 letters strcpy(stri...
strlen()函数为什么不检查NULL? 如果我执行strlen(NULL),程序会产生分段错误。 试图理解其中的原理(如果有的话)。
能否在C预处理器中实现strlen()函数? 已知:#define MYSTRING "bob" 是否有一些预处理宏,X,可以让我这样说:#define MYSTRING_LEN X(MYSTRING)
这是我的代码:#include <string.h> #include <stdio.h> typedef char BUF[8]; typedef struct { BUF b[23]; } S; S s; int main() { int n...
我有一个C程序(一个Apache模块,即程序经常运行),它将在套接字上write()一个以0结尾的字符串,因此我需要知道它的长度。 该字符串被定义为:#define POLICY "<?xml version=\"1.0\"?>\n" \ "<!DOCTYPE cro...
有没有人能够指引我查找GCC中 strlen() 的定义?我已经在4.4.2版本的代码中用grep搜索了半个小时了(同时也疯狂地Google),但似乎找不到实际实现了 strlen() 的位置。