Fabrizio Barrow Postado Abril 29, 2009 Denunciar Share Postado Abril 29, 2009 Boa noite!Como se iguala duas matrizes inteiras? Tipo matriz1 = matriz2. Fazer da matriz 1 ter todos os elementos identicos a matriz2, ou seja, a11=b11, a12=b12 e assim por diante.Tem como fazer de maneira simples matriz1 = matriz2 ou não? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Abril 29, 2009 Denunciar Share Postado Abril 29, 2009 copie elemento por elemento, usando loop Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Maligno Postado Abril 29, 2009 Denunciar Share Postado Abril 29, 2009 (editado) O colega também pode fazer uma cópia do bloco de memória da primeira pra segunda matriz. Aliás, respondendo à questão feita: matrizA = matrizB não pode ser feito para a cópia do conteúdo de uma matriz para outra. Até porque matrizA e matrizB contém apenas ponteiros para blocos de memória. Editado Abril 29, 2009 por Maligno Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 André_Prog Postado Maio 1, 2009 Denunciar Share Postado Maio 1, 2009 Pessoal...Boa Tarde!Sou novo em programação e fiquei também com a dúvida acima...Eu, (acreditava) que com o strcpy eu conseguiria fazer esta transferência de uma matriz para outra...Esta é uma maneira tmb...certo?Me corrijam se eu estiver errado!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Maligno Postado Maio 1, 2009 Denunciar Share Postado Maio 1, 2009 Errado.Uma string é uma matriz, de fato. Mas strcpy() só poderia ser utilizada em um caso de cópia de matriz. E só neste caso. Basta que a matriz a copiar seja uma pouco mais elaborada e a função já não poderia mais ser utilizada. Daí só restam duas alternativas: copia de elemento a elemento ou cópia de todo o bloco de memória da matriz. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Maio 2, 2009 Denunciar Share Postado Maio 2, 2009 Só uma observação:matriz != vetormatriz é um vetor bidimensional.Uma string como "teste" é um vetor de caracteres, não uma matriz de caracteres.Na verdade nem existe matriz. A gente trata um vetor bidimensional como matriz, mas, computacionalmente falando, matriz não existe. Tanto é que podemos declarar um ponteiro do tipo *valor - o que muitos interpretariam como um vetor - e tratar como matriz (vetor bidimensional), como vetor tridimensional... Afinal, a memória é linear Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Maligno Postado Maio 2, 2009 Denunciar Share Postado Maio 2, 2009 Esse assunto é muito controverso. Realmente não dá pra dizer que matriz é igual a vetor, nem que matriz é um termo que não existe. Tampouco dá pra dizer que vetor existe como estrutura de dados pois, na acepção da palavra, vetor é apenas um indicador. A própria norma ANSI ISO/IEC 9899, que regulamenta a linguagem C, usa o termo "vector" apenas como um ponteiro, e em pouquíssimas ocasiões. Nunca usam "vector" para indicar uma estrutura de dados.Muitos tradutores de bons livros de programação usam (por sua conta) tanto o termo vetor como o termo matriz. Mas no rigor do jargão, como eu disse, ambos estão errados. Alguns tradutores nem traduzem e mantém como "array" mesmo. Esse é o termo correto. Sem traduzir.Entretanto, como é de costume em algumas situações, as pessoas criam o hábito de usar traduções. A meu ver fica mais simpático. E o mais importante: dá pra entender perfeitamente.Particularmente eu prefiro o termo matriz, pois eu encaro vetor como ele é: um mero apontador. Claro que, na eventualidade de precisar procurar algo sobre o assunto, eu não uso "matrix", nem tampouco "vector". Uso "array". Senão eu não encontraria coisa alguma. :)Portanto, se quiser ser tão rigoroso no uso do jargão, adote o termo "array". Aí sim você estará certo, embora sua vida não mude um milímetro sequer. :)Em suma: essa discussão é inócua.PS: Quase esqueci de dizer: "vector" é também um tipo de dados da STL de C++. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Fabrizio Barrow
Boa noite!
Como se iguala duas matrizes inteiras?
Tipo matriz1 = matriz2. Fazer da matriz 1 ter todos os elementos identicos a matriz2, ou seja, a11=b11, a12=b12 e assim por diante.
Tem como fazer de maneira simples matriz1 = matriz2 ou não?
Link para o comentário
Compartilhar em outros sites
6 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.