Estou tentando fazer um programa mas ele está dando o seguinte erro:
variable-size type declared outside of any function
o código está com uma varíavel com o nome de MAX_PILHAS declarada como global. Minha intenção é que o usuário digite quantas pilhas ele deseja (MAX_PILHAS receberia esse valor).
A questão é que não consigo fazer isso :S
#include <stdio.h>
int MAX_PILHAS;
/*
Aqui entram todas as estruturas e funções utilizadas no programa
*/
[b]struct Pilha *listaPilhas[MAX_PILHAS];[/b]
main () {
scanf("%d", &MAX_PILHAS);
}
Aqui já começa meu problema, se colocar dessa forma (com a declaração da estrutura fora do main) ele dá esse erro.
Tentei colocar a declaração da estrutura dentro do main, mas não identifica essa estrutura nas funções (utilizo essa estrutura em todas as funções do programa).
Ah, mesmo colocando dessa forma no código:
int MAX_PILHAS = 10;
por exemplo, eu não consigo, mas se fizer assim:
#define MAX_PILHAS 10
// ou
const int MAX_PILHAS = 10;
O programa roda, mas obviamente não consigo alterar o valor dessa varíavel MAX_PILHAS.
Alguém poderia me explicar o que é esse erro?
Agradeço desde já,
ps: Se precisarem que coloque mais uma parte do código eu posto aqui, mas na verdade eu só queria saber porque ele está aceitando só constantes.
Pergunta
Miltonlp
Bom dia,
Estou tentando fazer um programa mas ele está dando o seguinte erro:
variable-size type declared outside of any function
o código está com uma varíavel com o nome de MAX_PILHAS declarada como global. Minha intenção é que o usuário digite quantas pilhas ele deseja (MAX_PILHAS receberia esse valor).
A questão é que não consigo fazer isso :S
Aqui já começa meu problema, se colocar dessa forma (com a declaração da estrutura fora do main) ele dá esse erro. Tentei colocar a declaração da estrutura dentro do main, mas não identifica essa estrutura nas funções (utilizo essa estrutura em todas as funções do programa). Ah, mesmo colocando dessa forma no código: por exemplo, eu não consigo, mas se fizer assim:O programa roda, mas obviamente não consigo alterar o valor dessa varíavel MAX_PILHAS.
Alguém poderia me explicar o que é esse erro?
Agradeço desde já,
ps: Se precisarem que coloque mais uma parte do código eu posto aqui, mas na verdade eu só queria saber porque ele está aceitando só constantes.
Att
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.