C语言如何求一个二维数组有几行,还有为什么会提示gets()是一个未定义的标识符?

如题所述

C语言中求一个二维数组有几行的方法如下:
假设有定义int nums[10][20];
二维数组行数可以用sizeof计算:
rows = sizeof(nums)/sizeof(nums[0]);

第二个问题,为什么gets会提示未定义标识,有两种可能:

一、编译器支持gets库函数,但是你没有包含头文件#include<stdio.h>;

二、编译器本身不支持gets库函数,因为gets函数是一个不安全函数,容易导致数组越界,所以很多编译器都不再有这个库函数了。取而代之的是gets_s或者fgets这类相对安全的函数,可以试试。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-08-28
缺少头文件,加一句:#include<string.h>
就可以了,gets是输入字符串,puts是输出字符串本回答被网友采纳