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

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Mensajes
Páginas: 1 ... 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 [80] 81 82 83
791  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 19:59 pm
Lo sé farresito , pero me parece muchísimo mas sencillo manejar un IDE , ya se que son desarrolladas con interés y paciencia yo mismo aunque haga aplicaciones que a nadie le sirve, me es más sencillo hacerlas en terminal . No sé ni lo que es pseudoterminal ni pipes. Bueno y perdona por si te ha dolido eso que he dicho no iba a mala inteción, ¿VIM? , la primera vez que lo escucho lo buscaré.

¡Un saludo!

PD: Pero bueno gustos hay muchos comprendo que te haya podido doler eso lo siento de verdad.
792  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 19:42 pm
Voy a probar durasno y ahora te digo, es lo que he leido en internet en ingles de como solucionar el error, yo todavia no me he enterado tampoco , pero por lo que se vé supongo que C++ por lo de los valores por referencia.

EDITADO: Si durasno compila perfectamente , entonces quedaria como
Código:
gcc xxx.c -Wall -lm -o xxx
793  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 19:27 pm
Ese problema también me salía a mí y lo puse en un post anterior que edité pero te lo pongo aquí también que me parece que no lo has visto, tienes que compilar usando esto , las primeras xxx son las de tu archivo en c y las ultimas las de el ejecutable de salida, el problema era que claro incluimos math.h que es donde están los prototipos de la funcion pero no linkeamos a donde están explicadas :
Código:
gcc -Wall xxx.c /usr/lib/....../libm.a -o xxx
tienes que encontrar el libm.a y poner su dirección completa en mi Ubuntu 11.10 está en /usr/lib/x86_64-linux-gnu/libm.a
PD: Si al fin y al cabo vas a trabajar usando un IDE yo uso codeblocks y por lo que se vé do-while también , mi opinión perosonal es que es un buen editor...
794  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 19:02 pm
Como en casi todos lados... A ver Dev-Cpp es un compilador de C/C++ no únicamente de C++ entonces puede crear tanto archivos de c (.c) como de c++ (.cpp) , ahora bien , no te funcionaba el primer código por lo que había dicho do-while , porque en C no se puede usar & para realizar llamadas por referencia eso es exclusivo de C++. Entonces al compilarlo con gcc (compilador de C) pues claro dice ¿eing? ¿esto que es? y dá error,y por tanto al compilar el código de tu primer post con g++ debería salirte bien.
795  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 18:50 pm
the_jocker pero se supone que estas trabajando en c! deberias compilarlo con gcc no por nada sino porque se supone que el ejecercicio es en c ¿no?
do-while las funciones de math.h , más o menos , digamos que si , hay que indicarle donde están los archivos que debe linkear(donde están las funciones de esa libreria). Eso lo hacen por defecto los IDE's supongo por eso al compilar codeblocks no dice nada y supongo que con otros tampoco , sin embargo ahí estás trabajando directamente con el compilador.
796  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 18:37 pm
¿Te compila ya entonces? ;D
797  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 18:23 pm
Claro! A todo el mundo le pueden gustar cosas diferentes  :) , y ¿donde está el error que me dijiste antes the_jocker? el de "tipos en conflicto para opera", "la declaración de opera estaba aquí". Igual es porque tenian un archivo de c++ .cpp en vez de uno de .c  , recuerda que desde c++ se pueden utilizar las librerías de c ... Yo he intentado compilarlo con la consola también y me ha dado los mismos errores que a tí , asi que ya ni idea.

¡Un saludo!

EDITADO : Ya he encontrado la solución , el problema es al linkear , tienes que hacer
Código:
gcc -Wall xxx.c /usr/lib/....../libm.a -o xxx
tienes que encontrar el libm.a y poner su dirección completa en mi Ubuntu 11.10 está en /usr/lib/x86_64-linux-gnu/libm.a
798  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 18:03 pm
En el código que le he puesto yo le sigue dando errores do-while , pero por lo visto el error que le da es el típico "tipos en conflicto para opera", "la declaración de opera estaba aquí".Como si hubiese definido antes la función.
799  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 17:39 pm
Bueno te creo porque yo todavia no he llegado a la facultad y tu si, faltan unos añitos aún  :( , pues no sé la verdad , lo único que te puedo decir es que pruebes a bajarte codeblocks , no tienes que configurar nada incluso el solo te autodetecta el gcc ...

PD: Si sí es así como dices // Nunca me gustó el terminal es muy cutre , prefiero valorar las herramientas que desarrollan otros con todo su interés y paciencia, además  si hay algo mas fácil¿porque no utilizarlo? y gratis!!, si lo que quieres es cojer experiencia con la consola , con ubuntu ya lo haces , no solo compilando :)
800  Programación / Programación C/C++ / Re: Problema con funcion sin tipo en C en: 29 Junio 2012, 16:14 pm
La verdad no llego a comprender que quiere decir  el ampersand delante de la raiz1 , o potencia1 , se supone que éstos deberían ser punteros , apuntando a una dirección de memoria, yo tengo como IDE Codeblocks 10.05 y como compilador gcc , ahí tienes el código , a mí me funciona.
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h> //Te faltaba este header para la funcion pow y sqrt
  4.  
  5. void opera(int n1, int m1, float *raiz1, int *potencia1); // He cambiado los ampersands por * , son variables puntero...
  6.  
  7. int main()
  8. {
  9.        int n,m,potencia;
  10.        float raiz;
  11.        printf("Ingresar un valor para n: ");
  12.        scanf("%d",&n);
  13.        printf("\nIngrese un valor para m: ");
  14.        scanf("%d",&m);
  15.        opera(n,m,&raiz,&potencia); //Le paso la direccion de memoria de las variables raiz y potencia, y las reciben las variables puntero de la funci&#243;n.
  16.        printf("\nLa raiz de n es: %.2f",raiz);
  17.        printf("\nLa potencia de n elevado a la m es: %d\n",potencia);
  18.        return 0;
  19. }
  20. void opera(int n1, int m1, float *raiz1, int *potencia1)
  21. {
  22.        *raiz1 = 0;         //Utilizo el operador de desreferencia para asignar los valores a la direcci&#243;n de memoria del puntero.
  23.        *potencia1 = 0;
  24.        *raiz1 = sqrt(n1);
  25.        *potencia1 = pow(n1,m1);
  26. }
  27.  
Una función en C puede tomar muchísimos argumentos por eso no era, pero la verdad el ampersand se que es para extraer el valor de memoria de la variable pero es que esa variable no apunta a nada! O eso creo que me abran los ojos si no lo veo...
¡Un saludo!
Páginas: 1 ... 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 [80] 81 82 83
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines