Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - MAFUS

#1061
Estás equivocado.

En cuánto declaras, por ejemplo int array[1], estás diciendo que quieres un array de 1 elemento, y tal y como cuenta C sólo es válido el elemento array[0].
Si quisieras un elemento array[1] ya son 2 elementos que se deben poder guardar, el array[0] y array[1], por lo que deberías declararlo como int array[2].
#1062
Un círculo, sin ver senos, cosenos ni posicionar arbitráriamente el cursor en pantalla puede ser muy difícil.
#1063
En los for, en la condición de continuidad, en vez de usar el comparador <= debes usar el comparador <. No debes llegar al valor máximo de la dimensión. Recuerda que empiezas por 0, no por 1.
#1064
Cierto, si la cadena es más larga que la cantidad de bytes que debe recoger fgets lo que resta de ella se queda en el buffer del archivo.
#1065
fgets también recoge el caracter '\n' como parte de la cadena introducida. Por eso, al compararlo con las palabras que le das a strcmpi no son iguales. Antes de dárselas debes cambiar el '\n' por '\0'.
#1066
Tienes razón  :rolleyes: No lo vi.
#1067
Programación C/C++ / Re: Ayuda en lista C++ !!!
10 Octubre 2016, 20:09 PM
El método ingreso no está bien. Cada vez que lo llames machacarás la raíz de la lista.
#1068
Vale , ahora dos cosas más, tres:
calloc es un poco lenta puew además de adquirir memoria la pone a 0. Como llenas toda esta memoria con el contenido del archivo no hace falta ponerla a 0, por tanto puedes usar malloc.

Ya qu adquieres memoria con malloc deberías liberarla, es una buena práctica,  despues de usarla. En main debes usar free para liberar archivoMem.

De igual forma tienes abierto un archivo en ptrArchivo. Debes liberarlo cuando termines de usarlo con fclose.
#1069
Tu función cargarArchivoMemoria no está bien diseñada.  En ella pasas como argumento archivoMem que resulta ser una declaración de una variable local de la función. Si retornas el dato a través del retorno de la función deberías quitar ese argumento de la llamada y transformarlo en declaración de variable local.
Si lo quieres como argumento de llamada deberías pasarlo por referencia (puntero a puntero) y modificarlo bien dentro de la función. Entonces puedes devolver el puntero a la cadena como valor de retorno u otra cosa para indicar éxito o fallo de la función.
#1070
Antes de ticar código, dime.

De lo que te hemos puesto ¿qué has entendido?
A lo mejor te contestas a ti mismo y sabes terminar el programa.