En mi programa C, esta función manejará todo el trabajo de abrir un archivo específico y luego devolverá el puntero del archivo, para que las funciones principales u otras puedan leer el contenido usando fp, pero hasta ahora no han podido hacer que esto funcione.Puntero de retorno de la función C
Estoy aprendiendo el idioma, por lo que es posible que esté haciendo algo muy malo.
int open_text_file(char text_file_name[])
{
FILE *fp;
if((fp = fopen(text_file_name, "r")) != 0)
{
return fp;
}
else
{
printf("Cannot open file \"%s\"\n", text_file_name);
}
}
Está intentando devolver un puntero a una estructura 'FILE' como' int'. ¿Qué (además de ese error) estás viendo? –
Como problema de estilo de codificación, debe comparar 'fp' contra' NULL' en lugar de '0'. También podría ser más claro separar la asignación y la comparación de 'fp' en declaraciones separadas. –