NUL未申报 - 首次使用此功能

Tin*_*ark 2 c nul

网上我了解C包含NUL关键字.

但是在编译时我得到了一个错误

NUL undeclared first use in this function'
Run Code Online (Sandbox Code Playgroud)

我的代码片段:

for (;;) {
        char ch = (*pzDest = *pzSrc);
        if (ch == NUL)
            break;
        if (ch == ':') {
            *pzDest = NUL;
            break;
        }
        pzDest++;
        pzSrc++;
    }
Run Code Online (Sandbox Code Playgroud)

知道为什么我会收到这个错误吗?

Cri*_*ego 11

NULL,然后有NUL.

NULL在stddef.h中定义,使用非常广泛,并且是对空指针的引用.

NUL是不同的 - 它是标准ASCII字符集中的第一个字符,更重要的是,它不是标准宏.您可能必须自己定义它.

要定义NUL,请执行以下操作:

#define NUL '\0'
Run Code Online (Sandbox Code Playgroud)