Matrizes em C e C++
Publicado por Rafael 12/03/2007
[ Hits: 12.484 ]
Homepage: nenhum
Apenas um exemplo de como declarar uma matriz em C e C++.
Ao menos quando eu fui atrás disso pela primeira vez não foi fácil de achar :-)
#include <iostream.h>
struct ponto{
float x;
float y;
};
int main(int argc, char * argv)
{
// Matriz em C++
ponto ***matriz= new ponto**[10];
for (int a=0;a<10;a++){
ponto **linha = new ponto*[10];
for (int b=0;b<10;b++){
ponto* pim = new ponto;
(*pim).x = a;
(*pim).y = b;
linha[b]=pim;
}
matriz[a] = linha;
}
// Matriz em C
ponto ***matrizc = (ponto***) malloc(10*sizeof(ponto**));
for (int a=0;a<10;a++){
ponto **linhac = (ponto**) malloc(10*sizeof(ponto*));
for (int b=0;b<10;b++){
ponto* pim = (ponto*) malloc(sizeof(ponto*));
(*pim).x = a;
(*pim).y = b;
linhac[b]=pim;
}
matrizc[a] = linhac;
}
// O acesso a ambas as matriz é feita da mesma maneira :-]
cout<<"Matriz em C++"<<endl;
for (int a=0;a<10;a++)
for (int b=0;b<10;b++){
cout<<"i:"<<matriz[a][b]->x<<"j:"<<matriz[a][b]->y<<endl;
}
cout<<"Matriz em C"<<endl;
for (int a=0;a<10;a++)
for (int b=0;b<10;b++){
cout<<"i:"<<matrizc[a][b]->x<<"j:"<<matrizc[a][b]->y<<endl;
}
// Liberando a memória em C
free (matrizc);
// Liberando a memória em C++
delete [] matriz;
// Nunca confunda, use free sempre com malloc(C) e delete com new(C++)
return 0;
}
Exibe quantos números perfeitos foram digitados
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Atualizações de Segurança Automáticas no Debian
Como cortar as partes de um vídeo com passagens de áudio em branco
Tiling automático no KDE Plasma
SNMP Scan no OCS Inventory só funciona com HTTPS corretamente configurado
Alguém tem que acabar com ANATEL!!! (0)
GOG confirma suporte oficial ao sistema Linux: "o trabalho começo... (4)









