小编per*_*man的帖子

将 const *char 传递给 strlen() 表示我正在传递 unsigned long

char** strsep(const char* str)
{
    char** returnStrings = NULL;
    for (int i = 0; i < strlen(str); i++)
    {
        if (str[i] == ' ') returnStrings[sizeof(returnStrings)/sizeof(returnStrings[0])] = "";
        else returnStrings[sizeof(returnStrings)/sizeof(returnStrings[0])] += str[i];
    }
    return returnStrings;
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试制作一个可以将句子(字符串)拆分为单词数组(也是字符串)的函数,但它不会编译并显示error: implicitly declaring library function 'strlen' with type 'unsigned long (const char *)' [-Werror,-Wimplicit-function-declaration]. 它说我正在输入一个 unsigned long 作为 strlen() 的参数,但我不是。我有#include <stdio.h>我的代码。

c strlen

0
推荐指数
1
解决办法
240
查看次数

C 划分不正确

我的代码(在 C 语言中)是这样的:

avg = round((r + g + b) / 3);

r = avg;
g = avg;
b = avg;
Run Code Online (Sandbox Code Playgroud)

它应该做灰度图像效果。没有语法错误,但显然是 avg,当如上所示r以 27gb28 的值计算时,avg 发现它是 27。我知道它是 27.66666 ......当四舍五入时是 28。如果你可以向我解释为什么会发生这种情况round(),和/或给我一个解决方案,真的很感激。

c math math.h

-1
推荐指数
1
解决办法
101
查看次数

标签 统计

c ×2

math ×1

math.h ×1

strlen ×1