MST

星途 面试题库

面试题:C语言指针遍历数组的高级难度题

给定一个二维字符数组 char str[5][20],每个子数组存储一个字符串。要求使用指针遍历这个二维数组,找出长度最长的字符串,并返回其长度,用C语言实现该功能,需考虑内存安全问题,写出完整代码。
31.9万 热度难度
编程语言C

知识考点

AI 面试

面试题答案

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

int findLongestStringLength(char (*str)[20]) {
    int maxLength = 0;
    for (int i = 0; i < 5; i++) {
        int length = strlen(str[i]);
        if (length > maxLength) {
            maxLength = length;
        }
    }
    return maxLength;
}

你可以使用以下方式调用这个函数:

int main() {
    char str[5][20] = {"hello", "world", "programming", "language", "computer"};
    int result = findLongestStringLength(str);
    printf("最长字符串的长度为: %d\n", result);
    return 0;
}