Linguagem C | Aula 50 - Função: struct como parâmetro

  Рет қаралды 39,643

Programação Descomplicada | Linguagem C

Programação Descomplicada | Linguagem C

Күн бұрын

Curso de programação e estrutura de dados em linguagem C.
Passando uma struct como parâmetro para uma função em linguagem C.
🔗 Links
▸ Códigos fontes: github.com/arb...
▸ Livro de Linguagem C: www.grupogen.c...
▸ Livro de Estrutura de Dados em Linguagem C: www.amazon.com...
▸ Livro de MATLAB: www.altabooks.c...
📌 Redes Sociais
▸ Página pessoal: www.andrebacke...
▸ Researchgate: www.researchga...
▸ LinkedIn: / andr%c3%a9-backes-a839...
#clanguage
#linguagemc
#estruturadedados

Пікірлер: 44
@icaroantunes7642
@icaroantunes7642 3 жыл бұрын
obrigado!
@myrlla_
@myrlla_ Жыл бұрын
ajudou mt
@Joao-pz4cz
@Joao-pz4cz Жыл бұрын
gênio
@jailsonathayde74
@jailsonathayde74 3 жыл бұрын
Mais uma aula incrível, como de costume.
@progdescomplicada
@progdescomplicada 3 жыл бұрын
Obrigado!
@heloisasouza5979
@heloisasouza5979 2 жыл бұрын
muitoooo obrigada por esses videos, ta ficando BEM mais claro pra mim
@felipe271
@felipe271 6 жыл бұрын
1:31 no printf dentro da função vc indicou a referência ao n "printf("Valor = %d ",*n)" e não o valor de n em si, por estar nesse formato quando for compilar, o resultado que sera mostrado é 11 e 21, e não o endereço de memória como da a entender que vai ser o resultando pelas chamadas de funções (utilização do &).
@CiroboyBR
@CiroboyBR 5 жыл бұрын
o * tira a referencia de um ponteiro, se você tem uma variável X e aplica nela a referencia &X, você tem um endereço que pode ser atribuído a um ponteiro. Se você pega um ponteiro P e tira a referencia dele com um asterisco, *X, isso trará o conteúdo da variável que está sendo apontada pelo ponteiro.
@jailsonathayde74
@jailsonathayde74 3 жыл бұрын
Pra quem vai estudar Estrutura de Dados em C, vai usar este atalho da seta a exaustão(imagina usar com o * rapidinho você cometeria erros). Precisa entender muito bem o funcionamento de struct porque o BIXO é BRABO se loko.
@andressa1163
@andressa1163 5 жыл бұрын
Eu não sei nem explicar o alívio que senti no meu coração quando compilei sem erros dps de muito tempo tentando fazer isso rodar :~ Finalmente consegui entender uma estrutura passada como referência. Muito obrigada mesmo.
@Caio-zt5if
@Caio-zt5if 7 жыл бұрын
Caralho mano... Vc é foda... Parabens msm... Tem tem três dias que tento aprender struct... E aprendi cntg em apenas 8 minutos... Parabens msm...
@lbonfim
@lbonfim 11 жыл бұрын
Caro André, muito boa a explicação. Não estava conseguindo entender como passar struct para a função. Após tua vídeo aula, passei a entender.
@allanhp4419
@allanhp4419 7 жыл бұрын
caraaaaa... tu é um genio... ja estava a mais de 2 horas tentando fazer um programa com structs em c vaklleeeeu
@PaulinhoHenrique07
@PaulinhoHenrique07 9 жыл бұрын
e como eu faço no caso de ter que preencher um vetor de struct em uma função?
@eljohn9804
@eljohn9804 6 жыл бұрын
tambem queria saber
@rokerumaluku
@rokerumaluku 4 жыл бұрын
Suas aulas são excelentes, parabéns. Estou assistindo e voltando nos seus vídeos a meses, parece que sempre tem um Bizú novo, que não me liguei da outra vez que vim.
@luizalves2308
@luizalves2308 4 жыл бұрын
Se p1 fosse um vetor de estrutura, passaria sem o "&"?
@progdescomplicada
@progdescomplicada 4 жыл бұрын
Sim, vc passaria ele inteiro por referência
@Joaovictor-fr9vj
@Joaovictor-fr9vj 8 жыл бұрын
vlw me ajudou muito, era exatamente isso que eu estava procurando
@satanojbsantos
@satanojbsantos 11 жыл бұрын
Boa explicação.
@gcareis
@gcareis 11 жыл бұрын
Muito bom. Uma dúvida, como seria para passar uma matriz de structs?
@5caioc
@5caioc 7 жыл бұрын
Tenho a mesma dúvida =/
@jailsonathayde74
@jailsonathayde74 3 жыл бұрын
Um vetor e struct é uma matriz.
@davidsilvamm
@davidsilvamm 9 жыл бұрын
Estou tentando passar um array de struct por referêcia e não estou conseguindo. Ex: typedef struct estrutura{...código...}estrutura; //suponha que existe dentro da estrutura declarações de variaveis de qualquer tipo. funcaoReferencia(estrutura *e,int tam){ int i; for(i = 0; i < tam.i++){ printf("digite um numero: ") e[i]->variavel; // Ele nao aceita isso, por quê? } } main(){ estrutura e[5]; funcaoReferencia(&e,5) } Quando eu passo o array de struct por referencia usando e tento alterar cada indice usando array_estrutura[i]->variavel não funciona. Só posso criar funções que recebem uma estrutura por vez?
@progdescomplicada
@progdescomplicada 9 жыл бұрын
David Silva Vc deve usar a seguinte sintaxe: e[i].variávelCada posição de "e" gurda um struct. Se guardasse um ponteiro, ai vc usaria "->"
@RafaNunes07
@RafaNunes07 11 жыл бұрын
Boa noite, poderia explicar se tem jeito de passar um vetor de struct como parâmetro (Por valor ou Por Referência) para uma função, e se tem como fazer? Grato!
@ryanfrancys6640
@ryanfrancys6640 2 жыл бұрын
Para isso, você declara dentro da função que esta recebendo como parametro a variavel como vetor(basta colocar[] em frente a variavel para que ele entenda ela como um vetor), e apos, ao inves de usar (*nome_struct).var ou nome_struct->var, utilize: nome_struct[n].var Assim ele entenderá que é um vetor de struct
@WillSunTzu
@WillSunTzu 7 жыл бұрын
Boa noite professor! Parabéns pelo seu material, excelente qualidade a nível técnico. Gostaria de assistir uma videoaula onde o Sr. mostrasse-nos como ter um struct contendo uma função (OU ponteiro dela) como membro, de forma que fizesse alusão a um Objeto das linguagens que são orientadas com esse paradigma. Abraço.
@GaelSilveira
@GaelSilveira 8 жыл бұрын
a função void soma_imprime_valor(int *n) dá erro no codeblocks
@progdescomplicada
@progdescomplicada 8 жыл бұрын
Qual erro?
@fjdoliveira82
@fjdoliveira82 4 жыл бұрын
Muito bom o seu vídeo. Parabéns. Gostaria apenas de ver se existe alguma possibilidade de eu passar como parâmetro da função o campo que deverá ser alterado e seu valor, dinamicamente, de forma que eu possa escolher na chamada da função qual campo será alterado. Por exemplo, chamando a função através de "atribui(p.x, 10)" ou "atribui(p.z, 10.98)", eu teria a função: void atribui(struct ponto *campo, valor) { campo = valor } Como eu faria para o primeiro parâmetro ser o campo que eu quero alterar, e não a struct completa? Digamos que no struct eu tenha campos do tipo int e do tipo float. Se puder me ajudar, eu ficarei grato.
@anarubia7586
@anarubia7586 8 жыл бұрын
Show! Gostei da seta ->
@vitoriatrigo7853
@vitoriatrigo7853 9 жыл бұрын
Porque p1 ali e não p?
@progdescomplicada
@progdescomplicada 9 жыл бұрын
Vitoria Trigo Onde?
@briefsymphonies
@briefsymphonies 9 жыл бұрын
+Vitoria Trigo p1 seria o nome da struct que ele declarou, por isso fica p1.x e p1.y
@arcano7257
@arcano7257 4 жыл бұрын
Os parentese são necessários porque o operador "*" de referência tem precedencia menor que o "."
@BarrosoFilho
@BarrosoFilho 11 жыл бұрын
Sheldon Cooper!!
@ronildoferreira7681
@ronildoferreira7681 5 жыл бұрын
kkkkkkkkkkkkkkkkkkk... vai estudar Barroso, bora voltar pra ufpi rsrs
@vitoriatrigo7853
@vitoriatrigo7853 9 жыл бұрын
É que você colocou a struct como parâmetro mas dentro da função colocou p e na função main p1!
@lucasbrvr
@lucasbrvr 6 жыл бұрын
então se eu fizer *(x.p) eu vou estar passando o p como referência?
@luisgabrielmxm
@luisgabrielmxm 6 жыл бұрын
nao tem como passar a estrutura inteira por valor?
@juninhojr8034
@juninhojr8034 8 жыл бұрын
Vc teria um e-mail para contato?
@Fernandes20nb
@Fernandes20nb 11 жыл бұрын
Ponteiro. ou &.
@briefsymphonies
@briefsymphonies 9 жыл бұрын
Olá! No lugar de struct ponto, poderia ser usado typedef struct{ int x,y; }ponto; ? Ai na hora de declarar a variável não precisaria usar o struct novamente, somente ponto p1 = {10,20}; Estou certo mestre? Parabéns pelas vídeo aulas!
Linguagem C | Aula 51 - Recursão: definição
6:25
Programação Descomplicada | Linguagem C
Рет қаралды 40 М.
Linguagem C - Aula 8 - Estude Structs (registros) em C (2022)
29:33
Pietro Martins De Oliveira
Рет қаралды 66 М.
Tuna 🍣 ​⁠@patrickzeinali ​⁠@ChefRush
00:48
albert_cancook
Рет қаралды 133 МЛН
It’s all not real
00:15
V.A. show / Магика
Рет қаралды 19 МЛН
Леон киллер и Оля Полякова 😹
00:42
Канал Смеха
Рет қаралды 4,6 МЛН
Struct - Linguagem C
11:56
Eduardo Casavella
Рет қаралды 87 М.
Linguagem C | Aula 48 - Função: Passagem por Referência
6:42
Programação Descomplicada | Linguagem C
Рет қаралды 37 М.
Ponteiros função com parâmetro por referência
17:12
Eduardo Casavella
Рет қаралды 25 М.
Linguagem C | Aula 55 - Ponteiros: Conceitos
8:54
Programação Descomplicada | Linguagem C
Рет қаралды 66 М.
Linguagem C | Aula 35 - Introdução as Estruturas (struct)
8:19
Programação Descomplicada | Linguagem C
Рет қаралды 109 М.
Entenda Ponteiros em C/C++ e como a Memória RAM funciona
18:39
Terminal Root
Рет қаралды 12 М.
Structs aninhadas e vetor de struct em C
12:59
Eduardo Casavella
Рет қаралды 40 М.
PONTEIROS EM C: SE NÃO APRENDER COM ESSE VÍDEO, ESQUECE!
15:13
Pilha Alocada Dinamicamente - Linguagem C - Estruturas de Dados
18:28
Pietro Martins De Oliveira
Рет қаралды 19 М.