Autor Tópico: resolvido  (Lida 2444 vezes)

Offline XSSinjection

  • Usuário Ubuntu
  • *
  • Mensagens: 8
    • Ver perfil
resolvido
« Online: 06 de Junho de 2011, 17:43 »
Bem, estou começando a aprender c/c++, então fui no terminal e digitei uma vez; apt-get install gcc, depois install g++...
Então salvei um código em C e compilei assim; gcc teste.c -o teste.
Depois fui compilar esse código; (dessa maneira; g++ -o teste teste.cpp)
#include <stdio.h>
int main()
{
    cout << "O tamanho de um int e:\t\t" << sizeof(int) << "bytes.\n";
    cout << "O tamanho de um um short int e:\t" << sizeof(short) <<"bytes.\n";
    cout << "O tamanho de um long int e:\t" << sizeof(long) <<"bytes.\n";
    cout << "O tamanho de um char e:\t\t" << sizeof(char) <<"bytes.\n";
    cout << "O tamanho de um bool e:\t\t" << sizeof(bool) <<"bytes.\n";
    cout << "O tamanho de um float e:\t\t" << sizeof(float) <<"bytes.\n";
    cout << "O tamanho de um double e:\t" << sizeof(double) <<"bytes.\n";
return 0;
}
e ta aparecendo assim;
g++ -o propri propri.cpp
propri.cpp: In function ‘int main()’:
propri.cpp:4:2: error: ‘cout’ was not declared in this scope


Poderiam me ajudar?


Valeu pessoal, deu certinho a compilação! Esse fórum é a salvação. :D
« Última modificação: 07 de Junho de 2011, 16:10 por XSSinjection »
Uns nascem normais...Choram e pedem atenção
Outros já nascem diferentes... IF (sentir dor) {chorar e pedir mamá}; ELSE {não chorar e dormir em silêncio, até que consiga alcançar o teclado};
                        YES,WE ARE LEGION!

Offline jeflui

  • Usuário Ubuntu
  • *
  • Mensagens: 745
    • Ver perfil

Offline fpissarra

  • Usuário Ubuntu
  • *
  • Mensagens: 246
    • Ver perfil
    • Lost in the e-Jungle
Re: problema ao compilar um programa
« Resposta #2 Online: 06 de Junho de 2011, 20:00 »
Bem, estou começando a aprender c/c++, então fui no terminal e digitei uma vez; apt-get install gcc, depois install g++...

Instale o build-essentials:
Código: [Selecionar]
$ [b]sudo apt-get install build-essentials[/b]
Depois fui compilar esse código; (dessa maneira; g++ -o teste teste.cpp)

#include <stdio.h>
int main()
{
    cout << "O tamanho de um int e:\t\t" << sizeof(int) << "bytes.\n";
    cout << "O tamanho de um um short int e:\t" << sizeof(short) <<"bytes.\n";
    cout << "O tamanho de um long int e:\t" << sizeof(long) <<"bytes.\n";
    cout << "O tamanho de um char e:\t\t" << sizeof(char) <<"bytes.\n";
    cout << "O tamanho de um bool e:\t\t" << sizeof(bool) <<"bytes.\n";
    cout << "O tamanho de um float e:\t\t" << sizeof(float) <<"bytes.\n";
    cout << "O tamanho de um double e:\t" << sizeof(double) <<"bytes.\n";
return 0;
}

e ta aparecendo assim;

g++ -o propri propri.cpp
propri.cpp: In function ‘int main()’:
propri.cpp:4:2: error: ‘cout’ was not declared in this scope

E isso está correto... seu código tem um errinho e está faltando outra coisa. O errinho é o arquivo de header incluído: ao invés de stdio.h deveria ser iostream. O que está faltando é incluir o namespace std[/n]:

Código: [Selecionar]
#include <iostream> /* sem o .h mesmo! */

/* cout é definido no namespace std! */
using namespace std;

int main()
{
  cout << "O tamanho de um int e:\t\t" << sizeof(int) << "bytes.\n";
  cout << "O tamanho de um um short int e:\t" << sizeof(short) <<"bytes.\n";
  cout << "O tamanho de um long int e:\t" << sizeof(long) <<"bytes.\n";
  cout << "O tamanho de um char e:\t\t" << sizeof(char) <<"bytes.\n";
  cout << "O tamanho de um bool e:\t\t" << sizeof(bool) <<"bytes.\n";
  cout << "O tamanho de um float e:\t\t" << sizeof(float) <<"bytes.\n";
  cout << "O tamanho de um double e:\t" << sizeof(double) <<"bytes.\n";

  return 0;
}
Citar
Poderiam me ajudar?
Ai está, espero ter ajudado!

Darcamo

  • Visitante
Re: problema ao compilar um programa
« Resposta #3 Online: 07 de Junho de 2011, 10:41 »
A biblioteca stdio.h é o cabeçalho para a biblioteca padrão da linguagem C, e não do C++. Dentre as funções declaradas nessa biblioteca você encontra, por exemplo, a função printf, que é a função usada para mostrar mensagens na tela em C. No entanto como o que você está querendo usar é C++ então o cabeçalho que você deve incluir é o iostream (não tem ".h" no nome). Como você não incluiu o iostream então o compilador não sabe o que é "cout" e por isso retornou o erro
Código: [Selecionar]
propri.cpp:4:2: error: ‘cout’ was not declared in this scope
Além disso, em C++ é comum a necessidade de especificar o"namespace" (você deve aprender sobre eles depois), que no caso da biblioteca padrão é "std". Nesse caso para usar o cout você precisaria escrever std::cout no lugar de cout. Para evitar digitar esse "std::" todo o tempo basta colocar a linha abaixo antes da main
Código: [Selecionar]
using namespace std;
O código completo ficaria
Código: [Selecionar]
#include <iostream>

using namespace std;

int main()
{
    cout << "O tamanho de um int e:\t\t" << sizeof(int) << "bytes.\n";
    cout << "O tamanho de um um short int e:\t" << sizeof(short) <<"bytes.\n";
    cout << "O tamanho de um long int e:\t" << sizeof(long) <<"bytes.\n";
    cout << "O tamanho de um char e:\t\t" << sizeof(char) <<"bytes.\n";
    cout << "O tamanho de um bool e:\t\t" << sizeof(bool) <<"bytes.\n";
    cout << "O tamanho de um float e:\t" << sizeof(float) <<"bytes.\n";
    cout << "O tamanho de um double e:\t" << sizeof(double) <<"bytes.\n";
    return 0;
}