2009-03-20 28 views
5

मैं कन्वर्ट करने के लिए कोशिश कर रहा हूँ निम्नलिखित सी # करने के लिए (पठनीयता के लिए संक्षिप्त) और समस्याओंबहुआयामी सरणी

#define DISTMAX 10 
struct Distort { 
    int a_order; 
    double a[DISTMAX][DISTMAX]; 
}; 

मैं structs में सोचा में चल रहे यह "निर्धारित" उपयोग करने का एक सरल मामला था हालांकि मुझे अभी भी समस्याएं आ रही हैं।

यहाँ मैं क्या मिल गया है (के साथ एक पेज उच्च ऊपर परिभाषित): क्या मैं एक सीमा होने की उम्मीद की वजह से

const int DISTMAX = 10; 
struct Distort 
{ 
     int a_order; 
     fixed double a[DISTMAX,DISTMAX]; 
} 

त्रुटि मैं stimply सिंटेक्स त्रुटि है कि] और [उम्मीद कर रहे हैं है एक आयाम सरणी का।

क्या इसके आसपास कोई रास्ता है?

उत्तर

7

फिक्स्ड साइज्ड बफर केवल एक-आयामी हो सकते हैं। आपको उपयोग करने की आवश्यकता होगी:

unsafe struct Distort 
{ 
    int a_order; 
    fixed double a[DISTMAX * DISTMAX]; 
} 

और फिर अलग-अलग मानों को प्राप्त करने के लिए उचित अंकगणित करें।

+0

यह पुष्टि करता है कि मुझे पहले से क्या संदेह है। धन्यवाद। – John

+0

क्या आपको इसे असुरक्षित के रूप में चिह्नित करने की आवश्यकता नहीं है? –

संबंधित मुद्दे