elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Mensajes
Páginas: 1 ... 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [19] 20 21 22 23 24 25 26 27 28 29 30 31 32 33
181  Programación / Programación C/C++ / Re: Ordenamiento de nombres en C# en: 24 Noviembre 2018, 16:20 pm
Parece mejor hacer una funcion que compare y solo 1 intercambio, algo asi como:

Código
  1. if( mayor( student1, student2 ) ) {
  2.     // intercambiar
  3. }
  4.  


Sugiero corregir la funcion de ordenamiento que al parecer le falta un ciclo al interior del que ya esta, sino no va a ordenar completamente el arreglo.
182  Programación / Programación C/C++ / Re: Ordenamiento de nombres en C# en: 24 Noviembre 2018, 11:01 am
Qué tal si concatenas los 3 valores y haces solo 1 comparación?
183  Programación / Programación C/C++ / Re: Archivos en: 22 Noviembre 2018, 22:10 pm
Si haces

Código
  1.       i = 3;

e inmediatamente despues haces

Código
  1.       i = 5;

que crees que pasa con el 3?

Si en un programa tuvieras esto:

Código
  1.       i = 3;
  2.       i = 5;

la primera linea seria completamente superflua, podrias eliminarla y el programa funcionaria igual.

Esto que parece obvio se puede ocultar en el paso de parametros de una funcion.

Código
  1. void f(int i) {
  2.     i = 5;
  3. }
  4.  
  5. int main() {
  6.    f( 3 );
  7. // ...
  8. }

Es lo mismo anterior, pero usando el paso de parametros. A i se le asigna 3 y luego se le asigna 5, no se usa el valor 3, se sobreescribe con el 5 posterior.

No tiene sentido invocar f(3), si lo primero que se hace en f es ignorar lo que se pasa y usar un valor distinto.

Eso estas haciendo en tus funciones que pasan como parametro una referencia a un archivo (cerrado,  o no), y que lo primero que hace es reasignar la referencia a algo mas.

Tu programa funcionaria igual sin poner ni pasar ese parametro, si lo pasas, no cierres el archivo, si lo cierras antes, no lo pases.

En tu caso, parece que lo que corresponde es la primera opcion.
184  Programación / Programación C/C++ / Re: Archivos en: 22 Noviembre 2018, 05:27 am
3 fclose: registrar_usuario_nuevo tiene 2 fclose e invoca a consultar_usuario que tiene otro fclose.

No cierres el archivo si lo vas a usar otra vez.
185  Programación / Programación C/C++ / Re: Archivos en: 22 Noviembre 2018, 02:29 am
Estás cerrando el archivo 3 veces, parece.
186  Programación / Programación C/C++ / Re: Plantillas programas escolares en C en: 22 Noviembre 2018, 02:27 am
- El primer do while tiene la condición mal.
- Los siguientes codigos repiten varias veces el mismo código con distintas variables. Sugiero refactorizar en vez de repetir el código como lo haces.
187  Programación / Programación C/C++ / Re: Archivos en: 21 Noviembre 2018, 18:52 pm
Si cierras el archivo justo antes de llamar a la funcion consultar_usuario, que al parecer usa su contenido, no deberia poder acceder a la informacion contenida en el.
188  Programación / Programación C/C++ / Re: ¿He liberado todos los apuntadores? en: 21 Noviembre 2018, 01:00 am
Hay, al menos, 3 cosas extrañas:

- realloc no modifica los punteros, si' libera la memoria, pero no modifica el puntero que se le pasa como primer parametro, este sigue apuntando a la zona de memoria anterior, por lo que en la linea 12, comparar ptr contra NULL no tiene sentido.

- realloc libera la memoria por uno, llamando a free(), puesto que la memoria ha sido liberada, hay que descontar 1 de tu contador, pero no lo haces. Usar realloc va a generar problemas en el contador, o bien problemas en la memoria, si es que uno decide invocar free() sobre memoria ya liberada.

- test_calloc incrementa 2 veces N_ptr, por que?
189  Programación / Programación C/C++ / Re: [C]Equivalencia de una referencia de C++ a C? en: 19 Noviembre 2018, 14:24 pm
La referencia para el caso funciona como una simplificacion de punteros y desreferenciaciones:

- Cambia en la definicion de la funcion para que reciba un puintero (quedaria Nodo **lista)
- En todas partes en que el codigo original de insertarLista en C++ que diga lista, en el de C pones *lista . (si llegas a omitir alguna, el programa va a fallar).
- En la invocacion de la funcion, en el main, donde dice lista, pones &lista.
190  Programación / Programación C/C++ / Re: referencia a 'pthread_create' sin definir en: 18 Noviembre 2018, 21:19 pm
Muestra que comando usas para compilar.

Si lo estás haciendo desde la línea de comandos, sugiero agregar. -pthread
Páginas: 1 ... 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [19] 20 21 22 23 24 25 26 27 28 29 30 31 32 33
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines