Jump to content

[C] Ajuda: Array de Strings


Recommended Posts

Posted

Boas!

Como é que posso ter um array fixo de strings? Sem ter que alocar memória?

O que pretendo é que dentro de uma estrutura possa ter um array para strings, e à medida que recebo uma string a ir guardando lá, mas sem alocar memória..

Estava a pensar em criar uma estrutura que contivesse apenas um char nome[256] e depois noutra estrutura criar um array da estrutura anterior, mas não estou a conseguir..

Como é que posso dar a volta a isto?

Posted

Dentro dessa estrutura podes ter esse array e uma variável que te diga o tamanho ocupado no array nesse momento. à medida que vai inserindo strings lá dentro vais incrementando a posição pella qual a string deve começar a ser escrita. Acho que esta é a melhor maneira...

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Posted

Já percebi o que queres.

Deve ser algo do género:

struct strings {
    char nome[50];
};

struct arrayStrings {
    struct strings str;
}array[50];

agora tens uma estrutura que te guarda 50 strings (foi o tamanho que defini, que é o número de posições). Para inserir lá algo é da seguinte maneira:

//aqui eventual código...
int i=0;
//aqui eventual código...
scanf("%s", buffer);
strcpy(array[i].str.nome,buffer);
i++;
//aqui eventual código...

Isto é apenas um exemplo. Não testei mas acho que é disto que estás a falar

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Posted

Eu de inicio estava a definir o array como char array[num]. So que por alguma razao estava a dar mal.

O problema é que eu estou a usar o modulo  FUSE para implementar um sistema de ficheiros, e de vez em quando ele faz-se de dificil...nada que carregar o modulo novamente nao resolvesse 👍

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.