Ajuda em C

KingdomHearts

Power Member
Boas, preciso da vossa ajuda, ainda sou bastante fraco em C e empanquei aqui numa situação que não consigo resolver.

O objectivo é fazer uma função que vai ler outro ficheiro onde se encontram dados dos utilizadores, e eu quero imprimir apenas alguns desses dados.

O ficheiro que contem estes dados tem esta estrutura

id:username: password:genero:ano:nome

E eu queria imprimir só "id - username - genero - nome".

O ficheiro principal tem um Typedef struct com a seguinte estrutura:

typedef struct {
int ID;
char username[20];
char password[20];
char genero;
int ano;
char nome[50];
} Tuser;

Resumindo, o meu problema é como é que vou fazer para identificar que o id acaba nos ":", o username começa a seguir e também acaba em ":", etc...

Obrigado desde já
 
eu lembrome de ter feito algu parecido a usar flex e bison
não me recordo se podes usar gramatica dentro do scanf e ler o que esta antes dos ':' uma questao de pesquisares :P
 
Estou com mais uma dúvida --'
Não consigo me explicar sem mostrar o código portanto vou colocar aqui parte dele.

Eu tenho estas estruturas, e dentro dessas estruturas tenho guardadas informações de outros ficheiros.

Código:
Já não é preciso.

E eu quero que a partir de um ID de um utilizador, ele me de os repins (que é um pin atraves de outro utilizador) que fez. Que apareça algo como "O utilizador Zé fez um repin através do utilizador Manel"

então eu fiz isto

Código:
Já não é preciso.

O problema é que em vez de me tar "O utilizador Zé fez um repin através do utilizador Manel" dá me algo assim "O utilizador Zé fez um repin através do utilizador ▒S▒"
Aparecem-me esses caracteres esquisitos :S

Espero que tenham conseguido perceber :\ e que me possam ajudar!

Muito obrigado!
 
Última edição:
Então o que tenho que colocar?

Obrigado desde já!

Isso pergunto-te a ti, o que é suposto o nick[20] ter lá dentro?

Antes de fazeres o strcpy tens de atribuir um valor qualquer ao nick. O que vai ser isso depende daquilo que queres fazer.
(Repara que esse strcpy está a copiar o nick para dentro do lista.users[v].username - de certeza que não querias fazer o contrário?)
Cumps
 
Última edição:
Isso pergunto-te a ti, o que é suposto o nick[20] ter lá dentro?

Antes de fazeres o strcpy tens de atribuir um valor qualquer ao nick. O que vai ser isso depende daquilo que queres fazer.
(Repara que esse strcpy está a copiar o nick para dentro do lista.users[v].username - de certeza que não querias fazer o contrário?)
Cumps

Porra!! Horas e horas a olhar para o código e era trocar esses dois! -.-'''

Muito obrigado! ;)
 
Back
Topo