我需要帮助了解 char*** 的含义以及如何初始化 char*** 类型的变量。
例如,如果有一个函数读取文件的行,同时跟踪行数并打印出每行及其对应的编号:
void read_lines(FILE* fp, char*** lines, int* num_lines){}
在这种情况下,char*** 代表什么,我将如何初始化变量行?
这是一个指针到指针到指针到- char
。在这种情况下,它很可能是一个输出参数。由于 C 按值传递参数,输出参数需要额外的间接级别。也就是说,read_lines
函数想给调用者char**
,并实现其经输出参数,它需要采取一个指针到char**
。可能你需要做的就是调用它:
char** lines = null;
int num_lines;
read_lines(fp, &lines, &num_lines);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句