A primeira vez que ví que quando criamos uma struct usando com malloc devemos acessar com seta -> achei a coisa mais chata do mundo. Agora que sei, graças ao senhor, o que de fato o malloc e calloc fazem e sei sobre a stack e heap, até acho uma boa essa clara distinção entre o que é estático e o que foi alocado dinâmicamente. Sua didática é incrível...estou a um mês maratonando e pode ter certeza que vou concluir! Esse é o meu repositório de estudos: /Ferreira-Jefferson/estudos-estrutura-de-dados
return 0; } Professor, estou tentando implantar essa struct só que tá dando erro na hora fazer a impressão dos atributos... Poderia me auxiliar a encontrar o erro nesse código?
No seu primeiro scanf, a variável 'nome' ja é um ponteiro, tendo em vista que ela é um vetor de char, então não se usa &. No segundo scanf, não me recordo como usa essa notação (*vet), mas acredito que a forma mais simples seria usar: scanf(" %[^ ]", dados[i].nome); scanf("%d", &dados[i].idade);
Sobre o "calloc" é exatamente isso mesmo. Todo o espaço alocado é preenchido por '\0'.
Obrigado por suas aulas . Estão me ajudando muito .
✌️
Cara, didática muito boa. Obrigado¡
A primeira vez que ví que quando criamos uma struct usando com malloc devemos acessar com seta -> achei a coisa mais chata do mundo.
Agora que sei, graças ao senhor, o que de fato o malloc e calloc fazem e sei sobre a stack e heap, até acho uma boa essa clara distinção entre o que é estático e o que foi alocado dinâmicamente.
Sua didática é incrível...estou a um mês maratonando e pode ter certeza que vou concluir!
Esse é o meu repositório de estudos: /Ferreira-Jefferson/estudos-estrutura-de-dados
QUE DIDÁTICA TOP!!!!!!
Obrigado ✌️
#include
#include
#define TAM 2
typedef struct cadastro{
char nome [30];
int idade;
}Cad;
int main(){
Cad dados[TAM];
int i;
Cad *vet = (Cad*)calloc(TAM,sizeof(Cad));
for(i = 0; i < TAM; i++){
printf("NOME:
");
scanf("%s",(*vet),&dados->nome);
printf("IDADE:
");
scanf("%d",(*vet),&dados->idade);
}
for(i = 0; i < TAM; i++){
printf("NOME: %s",dados[i].nome);
printf("IDADE: %d",dados[i].idade);
}
return 0;
}
Professor, estou tentando implantar essa struct só que tá dando erro na hora fazer a impressão dos atributos... Poderia me auxiliar a encontrar o erro nesse código?
No seu primeiro scanf, a variável 'nome' ja é um ponteiro, tendo em vista que ela é um vetor de char, então não se usa &.
No segundo scanf, não me recordo como usa essa notação (*vet), mas acredito que a forma mais simples seria usar:
scanf(" %[^
]", dados[i].nome);
scanf("%d", &dados[i].idade);
achei um pouco confuso