Fórum Ubuntu Linux - PT
20 de Maio de 2013, 03:59 *
Olá, Visitante. Faça o login ou registre-se.
Perdeu o seu e-mail de ativação?

Login com nome de usuário, senha e duração da sessão
Notícias: Informações da última versão: Ubuntu Linux 13.04 -Raring Ringtail
 
   Home   Ajuda Regras Pesquisa Login Registre-se  
Anúncios
Páginas: [1]   Ir para o fundo
  Imprimir  
Autor Tópico: Problema para compilar código C++ no Geany e Terminal  (Lida 978 vezes)
dj_isaias
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 21


Ver Perfil
« em: 01 de Dezembro de 2011, 11:26 »

Pessoal formatei minha máquina que possuía Rwindows e agora estou com Ubuntu 11.10.
Instalei o Geany para continuar estudando C++ pq antes eu usava o Dev C++.
Quando abri os códigos em .cpp, que baixei do pen drive do meu professor, para analisar deparei com os seguintes erros:
Código:
Matriz.cpp: Na função ‘void carrega_matriz()’:
Matriz.cpp:9:27: erro: ‘rand’ was not declared in this scope
Matriz.cpp: Na função ‘int main()’:
Matriz.cpp:22:21: erro: ‘srand’ was not declared in this scope
Matriz.cpp:26:15: erro: ‘system’ was not declared in this scope
Compilação falhou.

O código usado foi este:

Código:
#include<iostream>
using namespace std;
const int l=10, c=10;
int m[l][c];
int i,j;
void carrega_matriz(){
     for (i=0;i<l;i++){
         for (j=0;j<c;j++){
             m[i][j]=rand()%900+100;//Para gerar números de 100 à 999
         }
     }
}
void imprime_matriz(){
     for (i=0;i<l;i++){
         for (j=0;j<c;j++){
             cout<<m[i][j]<<" ";
         }
         cout<<"\n\n";   
     } 
}
int main(){
    srand(time(NULL));
carrega_matriz();
    imprime_matriz();
    cout<<"\n";
system("pause");
}

O programa roda normalmente no Rwindows com o dev c++.
O que eu devo fazer para que os códigos feitos no Rwindows sejam executados no ubuntu?
Como compilar e executar um código c++ no Geany ou similares?
Obrigado pela atenção.
Registrado
irtigor
Equipe Ubuntu
Usuário Ubuntu
*****
Deslogado Deslogado

Mensagens: 3.210


Delete, delete, delete!


Ver Perfil
« Responder #1 em: 01 de Dezembro de 2011, 18:12 »

Faltou
Código:
#include<cstdlib>
Você também vai receber uma mensagem de "command not found" (comando não encontrado), quando executar, devido ao pause (penúltima linha). Duas alternativas:
Código:
#if defined(WIN32) || defined(_WIN32) || defined(__WIN32) && !defined(__CYGWIN__)
system("pause");
#endif
Ou simplesmente remove essa linha.
Registrado
Páginas: [1]   Ir para o topo
  Imprimir  
 
Ir para:  

Powered by MySQL Powered by PHP Tema desenvolvido por FaBMak e n3t0
Powered by SMF 1.1.18 | SMF © 2006-2009, Simple Machines
© 2013 Canonical Ltd. Ubuntu e Canonical são marcas registradas da Canonical Ltd.
XHTML 1.0 válido! CSS válido!