1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

array erro c++

Discussão em 'Programação' iniciada por abyssknight, 5 de Maio de 2007. (Respostas: 4; Visualizações: 606)

  1. Boas!
    Alguem me consegue explicar como contornar este erro:
    Constant expression required in function main()
    Desde já agradeço.
    edit : Uso o compilador Borland c++ 4.5


    #include <iostream.h>
    #include <math.h>

    main()
    {
    int a,p;

    //const p=1;


    cout<< "Insira o numero de pontos (Xi,Yi)...\n";
    cin>>p; // p - numero de pontos
    //erro -> double x[p], y[p];

    //coordenadas

    for(a=1;a<=p;a=a+1)
    {
    cout<<"\nInsira a coordenada do ponto: x"<<a<<"=";
    cin>>x[a];
    cout<<"\nInsira a coordenada do ponto: y"<<a<<"=";
    cin>>y[a];
    }



    }
     
  2. Rui_Carlos

    Rui_Carlos 1st Folding then Sex

    double *x=new double[p];
     
  3. nice trick : p
    Thanks man funcionou.
    Podias me explicar qual e o significado entao dessa linha de codigo ?
    é o mesmo que double x[p], y[p]; mas com sintaxe difrente?
    isso o que faz é converter a variavel p numa constante?
    Obrigado
     
  4. Rui_Carlos

    Rui_Carlos 1st Folding then Sex

    se fazes 'double x[...];' está a alocar o array estaticamente e para tal precisas de saber à partida qual é o seu tamanho, com 'new double[...];' o array é alocado em tempo de execução e como tal o seu tamanho pode ser variável.
     
  5. obrigadao ai pela explicação e pela resoluçao do prob ; )
     

Partilhar esta Página