Estoy usando Visual Studio 2005 (C \ C++).C - Abrir un archivo dentro de una función usando fopen
Estoy pasando una cadena en una función como una matriz de caracteres. Quiero abrir el archivo pasado como un parámetro y usarlo. Sé que mi código funciona en cierta medida, porque si codigo el nombre del archivo como primer parámetro, funciona perfectamente.
Me doy cuenta si miro el valor como un reloj, el valor incluye la dirección a un lado del literal de la cadena. He intentado pasar el nombre del archivo como un puntero, pero luego se queja sobre la conversión de tipo con __w64. Como dije antes, funciona bien con "filename.txt" en lugar de fileName. Estoy perplejo.
void read(char fileName[50],int destArray[MAX_R][MAX_C],int demSize[2])
{
int rows=0;
int cols=0;
int row=0;
int col=0;
FILE * f = fopen(fileName,"r");
...
El código de función de llamada es:
char in_filename[50];
int dem[MAX_R][MAX_C];
int dem_size[2];
get_user_input(in_filename);
read(in_filename, dem, dem_size);
En el reloj añadí para el nombre de archivo aparece el texto correcto, por lo que los datos están siendo aprobadas en
Hm ... Hago eso mucho con MinGW. La función que luego abre un archivo pasa el parámetro "const char * filename" - MinGW nunca se quejó de eso. – mingos