C de iki boyutlu matriks tanımlanması.

Mehmet Tuğcular
23-07-2006, 22:55   |  #1  
OP Taze Üye
Teşekkür Sayısı: 0
3 mesaj
Kayıt Tarihi:Kayıt: Tem 2006

C de İki boyutlu matrikslerin tanımlanmasında;
her bir elemena remden 1 bit düşecek şekilde tanımlama
mümkünmüdür?

Yani 8 satır ve her bir satırın 144 elemandan oluştuğunu
düşünürsek.

char a [8] [144]; şeklinde bir tanım toplamda 1152 byte(9216 bit)yapar.

benim yapmaya çalıştığım ve beceremediğim ise;

x a [8] [144];    şeklindeki ifadenin toplamda 1152 bit(144 byte)olması.

Not:normalde C de x yerine char,int,float,double gibi değişken tanımlama ifadeleri kullanılabilirken,bit tipi
yani değişkenin alabileceği değerler ya bir yada sıfır
olacak şekilde iki boyutlu matriks tanımlama yapılamazmı?

struct tipi değişken tanımlamada herhangibir tanımlanmış char ve int tipi gibi değişkenler parçalara bölünüp her bir parçaya ayrı bir değişkenmiş gibi ulaşılabiliyor,
ama bu tip değişken tanımıylada matriks düzen oluşturmayı başaramadım.

struct {char x0:1,x1:1,x2:1,x3:1,x4:1,x5:1,x6:1,x7:1}byte_bits;

şeklinde bir tanımlamada x0,x1,x2,x3,x4,x5,x6,x7 değişkenler (char byte_bits ana değişkeninin parçaları)
kısaca toparlarsam bir byte'i ouşturan toplam 8 adet bit'ini ayrı ayrı sekiz farklı değişken miş gibi tanımlayıp kullandım.Tabi doğal olarak her bir değişken 1 ve 0 değerlerini alır.Kısmi olarak işimizi tam olmasada görebiliyor.(1 boyutlu dizi olarak.)
Ama yazımın başında anlattığım gibi iki boyutlu bir matriks'i bir türlü oluşturamadım.

İlgilenen arkadaşlar olursa sevinirim.
Teşekkürler İyi Çalışmalar.

Dip Not:Yukarıdaki tanımlamada 8 ler iyi çıkmıyor galiba
tanımlamalarda 8 gözüken yerleri [sekiz] şeklinde yazmak istedim.sekiz yazan yer rakam olarak 8


Son Düzenleme: Mehmet Tuğcular ~ 24 Temmuz 2006 11:30
darth_revan
10-08-2006, 04:38   |  #2  
Üye
Teşekkür Sayısı: 0
52 mesaj
Kayıt Tarihi:Kayıt: Ağu 2006

verinin 1 yada 0 alması bool kodu ile mümkün, ancak bu C++'da destekleniyor sadece.
bool asd=TRUE;
if(asd)
{
//kod
}
gibi...