C dili hakkında sorular - sayfa 9

 
Кеша Рутов :

mine_score *m'de bir int için bir POINTER'dır ve yorum bunun bir dizi olduğunu, yani her satır için farklı sayıda sütun olduğunu söylüyor, buna dikdörtgen değil "kıvrımlı dizi" denir.

Sadece bu dizi uzunlukları için bellek ayrılmış, değer yok

M matrisinin kendisi için

burada dize işaretçileri için bellek ayrılmıştır

ve burada sütunlar için

evet, muhtemelen daha sonra kafanız karışmaması için yapıyı terk etmeniz gerekiyor.

Ben sadece matrisi değiştirmek istedim

 
Maxim Dmitrievsky :

evet, muhtemelen daha sonra kafanız karışmaması için yapıyı terk etmeniz gerekiyor.

Ben sadece matrisi değiştirmek istedim

Aynen öyle, kafa karıştırmamak için daha önce bir zaman vardı, numaralandırmaları, ekstra yapıları vb. reddettim. onsuz yapabileceğiniz her şey ve sonra birkaç ay içinde bu koda bakıyorsunuz ve sıfırdan yeniden yazmak daha kolay, diğer izleyiciler hakkında genellikle sessizim, çok rezil olabilirsiniz. Ayrıca bunlarda ve artılarında standart diziler bir fonksiyona atanıp geçtiğinde referans oluyor, çoğu durumda boyut ve yapıyı öğrenmenin bir yolu yok, gerekli, dinamik olanlar belli, dizi bile değil ama sadece ilk öğeye bir işaretçi şeklinde bir bellek parçası.

 
 if (param->est == EST_MIC_APPROX)
        ret = OptimizeXAxis(xx, yx, prob->n, Q_map, q, P_map, p, score->m[i]+ 1 ,
                             score->M[i] );

Bu, daha önce bildirilen 2 boyutlu M dizisi ( double **M; /* (eşit)karakteristik matris */ ), ancak bu işleve yalnızca bir "çizgili" M[i] dizesi iletildiğinde geldiğim yer. ve mkl üzerinde zaten matrisler aracılığıyla yaptı. Ve şimdi uzun zamandır küfür ediyorum.

ama belki sahte bir problemdir

 
C ile ilgili bilim-teknoloji rapini seviyorum https://www.youtube.com/watch?v=cdX8r3ZSzN4
 

***

 
Konstantin Nikitin :

bazhenovivansergeevich , Freelance'da

biraz daha ve yasaklanacak :-)

nazik bir moderatör öncekini silmezse

 
Maxim Kuznetsov :

biraz daha ve yasaklanacak :-)

nazik bir moderatör öncekini silmezse

Bazen bir hamam, düşüncelerinizi düzene koymanıza yardımcı olur.

 

aşağıdaki yapı ile sonuçlanır:

 typedef struct TF_Status TF_Status;
TF_Status* TF_NewStatus();

TF_Status'un boyutuna baktı - derleme 32 bit ise 4 bayt, 64 bit ise 8 bayt

ama aslında TF_NewStatus()'un ne döndüreceğini anlamıyorum ?

 
Igor Makanu :

aşağıdaki yapı ile sonuçlanır:

TF_Status'un boyutuna baktı - derleme 32 bit ise 4 bayt, 64 bit ise 8 bayt

ama aslında TF_NewStatus()'un ne döndüreceğini anlamıyorum ?

Yazmak normal ise, yapıya işaretçi geri dönecektir.