Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: aikados en 18 Mayo 2010, 20:29 pm



Título: cerr
Publicado por: aikados en 18 Mayo 2010, 20:29 pm
hola
estoy usando el visual 2008, como ya les habia comentado antes donde estudio usan el visual 6.0, para mandar un error tengo este codigo       cerr <<"no se pudo abrir el archivo: " <<nombreArchivo<<endl;
 y al compilarlo me dice que cerr no esta declarado, alguien sabe si tengo que incluir alguna biblioteca o algo? :S


Título: Re: fstream
Publicado por: Namida en 18 Mayo 2010, 20:56 pm
Has incluido el archivo de cabecera?
Código:
#include <fstream>
using namespace std;
Y con esto, todo solucionado. Yo tb utilizo Visual Studio 2008 y no me da problemas.. enga suerte! :D


Título: Re: fstream
Publicado por: aikados en 18 Mayo 2010, 20:58 pm
Has incluido el archivo de cabecera?
Código:
#include <fstream>
using namespace std;
Y con esto, todo solucionado. Yo tb utilizo Visual Studio 2008 y no me da problemas.. enga suerte! :D

jeje gracias ya resolvi ese problema  ;D
ahora tengo otro ._. y no encuentro nada sobre la funcion cerr  :-X


Título: Re: cerr
Publicado por: Namida en 19 Mayo 2010, 23:47 pm
Deberias apoyarte en algún libro para estas dudillas jeje... te pasa lo mismo que en tu anterior duda.
Código:
#include <iostream>
using namespace std;

Si estas empezando, para enviar mensajes a pantallas te aconsejo cout.

Enga, saludos! ;D


Título: Re: cerr
Publicado por: .:BlackCoder:. en 19 Mayo 2010, 23:58 pm
Yo una sola vz use el compiler ese... (visual) y no necesitaba el using namespace... solo la libreria que dijo Namida...

Edito: Lo digo para ver si alguien me dice si es necesario o no... Yo se que con std::cin>>x; se resuelve sin usar el using namespace pero sin ninguno de los 2 funciona? es decir solo cin>>x; sin using namcespace ni std::??


Título: Re: cerr
Publicado por: h0oke en 19 Mayo 2010, 23:59 pm
Visual es un compilador?  :huh:


Título: Re: cerr
Publicado por: Namida en 20 Mayo 2010, 00:05 am
Yo una sola vz use el compiler ese... (visual) y no necesitaba el using namespace... solo la libreria que dijo Namida...

Edito: Lo digo para ver si alguien me dice si es necesario o no... Yo se que con std::cin>>x; se resuelve sin usar el using namespace pero sin ninguno de los 2 funciona? es decir solo cin>>x; sin using namcespace ni std::??

Tienes dos opciones... std::cin,cout o lo que sea o declarar el espacio de nombres al principio (using namespace std) y olvidarte del prefijo y poner directamente cin, cout o lo que sea XD


Título: Re: cerr
Publicado por: .:BlackCoder:. en 20 Mayo 2010, 00:13 am
No se si es un compilador yo le digo compilador xD como le dices tu IDE?  :huh:


Título: Re: cerr
Publicado por: Littlehorse en 20 Mayo 2010, 00:13 am
Citar
Edito: Lo digo para ver si alguien me dice si es necesario o no... Yo se que con std::cin>>x; se resuelve sin usar el using namespace pero sin ninguno de los 2 funciona? es decir solo cin>>x; sin using namcespace ni std::??

No, no funciona porque todas las entidades de la librería estándar de c++ están declaradas dentro del std namespace.

Código
  1. #include <iostream>
  2. using std::cout;//Entidad especifica.
  3. using std::cin;
  4. using std::endl;
  5.  
  6. int main()
  7. {
  8.  cout<<"Hey"<<endl;
  9.  cin.get();  
  10. }

Código
  1. #include <iostream>
  2. using namespace std; //Scope global, no recomendado.
  3. int main()
  4. {
  5.  cout<<"Hey"<<endl;
  6.  cin.get();  
  7. }

Código
  1. #include <iostream>
  2. int main()
  3. {
  4. using namespace std;//Main scope    
  5.  cout<<"Hey"<<endl;
  6.  cin.get();  
  7. }


etc.

Saludos!

Edit:

No se si es un compilador yo le digo compilador xD como le dices tu IDE?  :huh:

Visual Studio es un IDE que viene con su propio compilador.


Título: Re: cerr
Publicado por: h0oke en 20 Mayo 2010, 02:40 am
Tal cual aclaró littlehorse... hay una diferencia entre IDE y compilador.


Título: Re: cerr
Publicado por: aikados en 23 Mayo 2010, 01:52 am
no puedo usar cout o cin por que estoy en ambiente grafico(al menos eso dice mi maestro ....), como sea ese problema lo pude resolver antes de que contestaran y cambie el asunto del post,{8disculpen si abuso de su confianza)

no encuentro nada sobre la funcion cerr usada en visual 6.0, saben si necesito declarar un archivo de cabecera? U_U


Título: Re: cerr
Publicado por: Micah Genji en 23 Mayo 2010, 08:11 am
Código:
using namespace std; //Scope global, no recomendado.
mmm por que razon este no es recomendado? :-X

saludos


Título: Re: cerr
Publicado por: Littlehorse en 23 Mayo 2010, 09:10 am
El concepto de un namespace es otorgar al programador la posibilidad de utilizar distintos ámbitos y evitar los posibles conflictos entre declaraciones.

La gente se suele acostumbrar al usar el namespace global porque se da cuenta que al utilizarlo nunca mas tiene que usar std::. Eso en programas sencillos esta perfecto, pero en desarrollos serios puede traer graves ambigüedades y conflictos entre declaraciones ya que, usualmente, no sos el único que esta codificando cuando trabajas en un proyecto.

Lo ideal seria utilizar el using con miembros específicos (el primer ejemplo)

Saludos!


Título: Re: cerr
Publicado por: Micah Genji en 23 Mayo 2010, 09:19 am
wow increible eso no me explicaron ni en mis sueños  :laugh:
gracias por la explicacion

saludos