MST

星途 面试题库

面试题:C语言中结构体指针空指针判断基础应用

假设有如下结构体定义:struct Student { int id; char name[20]; }; 编写一个函数,该函数接收一个指向struct Student的指针,在函数内部判断该指针是否为空指针,如果不为空则打印出学生的id和name,否则打印提示信息'指针为空'。
15.6万 热度难度
编程语言C

知识考点

AI 面试

面试题答案

一键面试
#include <stdio.h>
#include <string.h>

struct Student {
    int id;
    char name[20];
};

void printStudentInfo(struct Student *studentPtr) {
    if (studentPtr == NULL) {
        printf("指针为空\n");
    } else {
        printf("学生id: %d, 学生name: %s\n", studentPtr->id, studentPtr->name);
    }
}

你可以这样调用这个函数:

int main() {
    struct Student student1 = {1, "Alice"};
    struct Student *ptr1 = &student1;
    struct Student *ptr2 = NULL;

    printStudentInfo(ptr1);
    printStudentInfo(ptr2);

    return 0;
}