I'm reading some C++ code (SGP4, a satellite propagation code) and I found the following function declaration:
void twoline2rv(char longstr1[130], char longstr2[130], char typerun,
char typeinput, char opsmode, gravconsttype whichconst,
double &startmfe, double &stopmfe, double &deltamin,
elsetrec &satrec);
I'm wondering what it means to say char longstr1[130]
in a function argument. Why does the compiler need to know that the array is 130 bytes long? And why not say char *longstr1
?