什么是需要使用空指针正确执行的应用程序示例?只需检查空指针并进行测试就不算数了.这个例子应该被C程序员"常用".
经过一番思考,我有一个可能的例子,但我不想影响答案(还).
编辑:这个问题是一个编程工作的访谈,需要知识而不是C语言中的神似技巧.答案不会是语言的一些深奥的方面.
execvp族函数期望参数列表以空指针终止.例如,
execvp("/bin/ls", arguments);
Run Code Online (Sandbox Code Playgroud)
这里arguments应该以NULL结尾.
strtok()对于第二次和后续迭代,该函数依赖于NULL; 它表现得更好的亲戚strtok_r()也是如此strtok_s().
略有不同的重点:
字符串搜索等功能strchr(),并strstr()返回NULL指针时,他们无法找到你问他们去寻找.
分配失败时,内存分配函数返回NULL指针.
该fopen()函数无法打开文件时返回NULL指针.
该opendir()函数无法打开目录时返回NULL指针.
注意这里有一个主题?通常返回NULL指针作为错误指示.这是否算作"只是检查"或许更值得商榷.