面试题答案
一键面试代码实现
#include <stdio.h>
void processData(int *ptr) {
if (ptr == NULL) {
printf("接收到NULL指针,进行安全处理,不执行数据处理操作\n");
return;
}
// 处理数据的逻辑
printf("处理数据: %d\n", *ptr);
}
int main() {
int num = 10;
int *validPtr = #
int *nullPtr = NULL;
// 使用有效指针调用函数
processData(validPtr);
// 使用NULL指针调用函数
processData(nullPtr);
return 0;
}
函数内部安全处理
在processData
函数内部,首先需要检查传入的指针是否为NULL
。可以使用条件语句if (ptr == NULL)
进行判断。如果指针为NULL
,函数应该避免对指针进行解引用操作,因为这会导致程序崩溃。此时,可以选择打印一条错误信息,或者执行其他合适的错误处理逻辑,比如直接返回,以确保程序的安全性和稳定性。如果指针不为NULL
,则可以正常执行对数据的处理逻辑。