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


 


Tema destacado: Doble factor de autenticación o verificación en dos pasos


  Mostrar Mensajes
Páginas: 1 2 3 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 ... 350
141  Programación / Programación C/C++ / Re: Errores raros después de una compilación normal en: 27 Febrero 2017, 19:55
Bien, el problema es que scanf deja un salto de línea en stdin. fgets lo lee, y da como terminada la lectura. Para ello, puedes usar:
Código
  1. scanf("%d%*c", &n);

Ese %*c lee un caracter y no lo guarda. Esta es la solución rápida.

Otra solución sería leer siempre cadenas y, cuando sea un número, convertirla con la función int atoi(char*)
142  Programación / Programación C/C++ / Re: Errores raros después de una compilación normal en: 27 Febrero 2017, 18:52
En vez de gets(persona.nombre), utiliza fgets:

Código
  1. fgets(char* cadena, int tamañoCadena, FILE* stream)

Lo llamarías:
Código
  1. fgets(persona.nombre, 30, stdin)
143  Programación / Programación C/C++ / Re: problema al linkear mi libreria con codeblocks en: 27 Febrero 2017, 14:36
Compila la librería, y mira los archivos de salida. Debería haber .h y .o. Si genera DLL, entonces también verás los .dll.

Lo de DLL_EXPORT pues, en las DLL se suele incluir una condición de pre-procesado comprobando si está definido DLL_EXPORT. Con esto quiero decir, que poner ese define no hace anda de por sí. Depende del código. Puedes buscar "DLL_EXPORT" en el código y ver si se está utilizando.
144  Programación / Programación C/C++ / Re: problema al linkear mi libreria con codeblocks en: 27 Febrero 2017, 13:08
Busca los .h en la carpeta. Si existen, entonces tienes que poderlos incluir. Si es así, dime exactamente en qué ruta están y exactamente qué pones en search directories y en los include.
145  Programación / Programación C/C++ / Re: problema al linkear mi libreria con codeblocks en: 27 Febrero 2017, 00:12
En search directory, pones la ruta absoluta donde quieres que el compilador busque las librerías.
Por ejemplo, si pones en search "C:/abc", y en el include "includes/lib.h", buscará: "C:/abc/includes/lib.h"
Para el linkeado es casi lo mismo.

Pones el include con comillas funciona, sí, pero preferiblemente, poner la ruta a la librería en search directories y poner solo el nombre de la librería (y sus sub-carpetas si tiene).

Como ejemplo, esto tengo yo en mi Code::Blocks:





146  Programación / Programación C/C++ / Re: problema al linkear mi libreria con codeblocks en: 26 Febrero 2017, 23:24
En la ruta, no pones gloox/src, sino que pones solo gloox, que es la ruta donde está "src/... .h" (si pones gloox/src, entonces harías include sin el "src/" del principio.

Una vez consigas compilar, veremos los errores de linker que pueda haber (cuando sea un error de linker, lo reconocerás, ya sea porque pone algo de LNK o porque no te marca ninguna línea del código como errónea)

Por cierto, en lo del linker de tu primer mensaje ponia: "../../gloox/libgloox.a". Es una ruta relativa. Te recomendaría poner rutas absolutas.
147  Programación / Programación C/C++ / Re: problema al linkear mi libreria con codeblocks en: 26 Febrero 2017, 22:40
hay 2 partes: la compilación y el linkeado. Para la compilación, necesitas las cabeceras, nada más. para el linkeado, solo los ficheros objeto (.a, .o...).
Ese error es de compilado, no es cosa de los objeto.

La ruta en la que están las cabeceras, ¿la has añadido? No es en lo de Link libraries (eso es para los ficheros objeto). Para las cabeceras, tienes que meter la ruta en "Search directories -> Compiler". La ruta de la carpeta en la que están las cabeceras. Si haces include <src/client.h>, entonces metes al ruta en la que se encuentre la carpeta src (aunque normalmente, las cabeceras se copian a una carpeta "includes" al compilar la librería)
148  Programación / Programación C/C++ / Re: [C++] Leer un archivo y meterlo en un array bidimensional en: 26 Febrero 2017, 17:28
Oh cierto perdon, me confundí con el código de dato000.

Bien, el tema es, que ciertamente, cin>>string lee hasta salto de línea o espacios.
para leer una línea, getline(istream, string):
Código
  1. ifstream file(...);
  2. string linea;
  3. getline(file, linea);
  4.  
  5. // O, para leer de consola:
  6.  
  7. getline(cin, linea);
149  Programación / Programación C/C++ / Re: que es un fichero .o en c++? en: 26 Febrero 2017, 17:26
Sí. Y bueno, también las librerías (que no dejan de ser ficheros objeto muchas de ellas)
150  Programación / Programación C/C++ / Re: [C++] Leer un archivo y meterlo en un array bidimensional en: 26 Febrero 2017, 16:54
Tanto un '#' como un espacio son ambos caracteres, y tanto fread como fgetc como gran parte de las funciones los van a tratar de igual forma. Simplemente, leerás el espacio.

Y sí, recorrerlo primero es una opción. Otra opción es ir leyendo e ir ampliando la matriz (crear otra más grande, copiar contenido antiguo y liberar la antigua). Lo que más cómodo se te haga.
Páginas: 1 2 3 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 ... 350
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines