[?][c++]cout << fu1(5); se cierra el programa

Iniciado por anonimo12121, 19 Febrero 2011, 13:15 PM

0 Miembros y 1 Visitante están viendo este tema.

anonimo12121

int fu1(int n){
return 0;
}


pues le paso cout << fu1(4) ;

y el programa se cierra no se le puede pasar funciones a cout? para que muestre el valor devuelto?


los return no pueden devolver una direccion de memoria?? como haría para almacenar la direccion en un int? no el valor si no la direccion
Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746

Riki_89D

#1
Creo que deberias usar la funcion printf en vez de cout

debes incluir la cabecera stdio.h

printf("%d",fu1(4));

prueba aver,saludos

_*p

#2
Hola xafirot, compilado con g++ funciona sin problemas sólo dando el warning al retorno de la dirección...


Código (cpp) [Seleccionar]
#include <iostream>

char *foo( void );
int foo2( void );
int *dir( void );

int main()
{
std::cout << "foo:";
std::cout << foo() << std::endl;
std::cout << "foo2:";
std::cout << foo2() << std::endl;
std::cout << "dir:";
std::cout << dir() << std::endl;
}

char *foo( void )
{
return "HOLA MUNDO";
}

int foo2( void )
{
return 0;
}

int *dir( void )
{
int x = 10;
std::cout << "LA DIRECCION DE x es:" << &x << std::endl;
return &x;
}


facu@linux:~/Escritorio$ ./a.out
foo:HOLA MUNDO
foo2:0
dir:LA DIRECCION DE x es:0xbfe2587c
0xbfe2587c

anonimo12121

Vale sera windbugs7.

no me a quedado claro una cosa...

imaginaros que tengo una funcion:
int funcion(int x);
int m;

sabiendo que &m es la direccion de memoria de m , como se hace para la funcion?

ahora llevo esto.
#include <iostream>
using namespace std;
int fu1(int n){
    return n;
};
int fu2(int *n){
    return 0;
};
int main(int argc,char *argv[]){
    int m=15;
    int *p;
    *p=17; //el puntero obtiene el valor de toda la array
    p=&m;
    //p=&m[2]; apunta a la direccion de memoria
    cout << "\n  &p:\t "<<&p;
    cout << "\n  *p:\t "<<*p;
    cout << "\n  p:\t "<<p;
    cout << "\n  m:\t "<<m;
    cout << "\n  &m:\t "<<&m;
    cout << "\n____________________________";
    *p=16;
    cout << "\n  &p:\t "<<&p;
    cout << "\n  *p:\t "<<*p;
    cout << "\n  p:\t "<<p;
    cout << "\n  m:\t "<<m;
    cout << "\n  &m:\t "<<&m;
    cout << "\n____________________________";
    m=20;
    cout << "\n  &p:\t "<<&p;
    cout << "\n  *p:\t "<<*p;
    cout << "\n  p:\t "<<p;
    cout << "\n  m:\t "<<m;
    cout << "\n  &m:\t "<<&m;
    cout << "\n____________________________";
   
   
    cin.get();
    return 0;
}
Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746

_*p

No entiendo esta pregunta:


Citarsabiendo que &m es la direccion de memoria de m , como se hace para la funcion?


¿Quieres saber como devolver la dirección de x con "funcion"? o ¿quieres saber la dirección de la funcion?

anonimo12121

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746