2010-08-31 10 views
5

के बारे में प्रश्न मैंने on Wikipedia पढ़ा है कि चक्रवात प्रोग्रामिंग भाषा सी प्रोग्रामिंग भाषा की एक सुरक्षित बोली है इसलिए निम्न सी कोड पर विचार करें।चक्रवात

int strlen(const char *s) 
{ 
    int iter = 0; 
    if (s == NULL) return 0; 
    while (s[iter] != '\0') { 
     iter++; 
    } 
    return iter; 
} 

यह फ़ंक्शन मानता है कि जिस स्ट्रिंग को पारित किया जा रहा है उसे एनयूएल ('0') द्वारा समाप्त किया जाता है। लेकिन अगर हम इस तरह एक स्ट्रिंग,

char buf[] = {'h','e','l','l','o','!'} 

पारित यह strlen जरूरी साथ स्ट्रिंग रों जुड़ा नहीं स्मृति के माध्यम से पुनरावृति करने के लिए कारण होगा। तो चक्रवात

में इस कोड का एक और संस्करण
int strlen(const char ? s) 
{ 
    int iter, n = s.size; 
    if (s == NULL) return 0; 
    for (iter = 0; iter < n; iter++, s++) { 
     if (*s == '\0') return iter; 
    } 
    return n; 
} 

मैं दृश्य स्टूडियो में चक्रवात का उपयोग करें या मैं एक नया संकलक donwload करने के लिए है कुछ नहीं कर सकता है?

उत्तर

3

आप Cyclone की आवश्यकता होगी। यह कंपाइलर का नाम भी है। चक्रवात कंपाइलर स्रोत कोड here में उपलब्ध है। चक्रवात कंपाइलर, दस्तावेज़ीकरण के अनुसार, केवल जीसीसी के साथ संकलित किया जा सकता है। चक्रवात कंपाइलर संकलित करने के लिए this देखें।

यदि आप * .cyc फ़ाइलों के लिए custom rules प्रदान करते हैं तो आप इसे विजुअल स्टूडियो से उपयोग कर सकते हैं। इस तरह आप आईडीई को बेहतर टेक्स्ट एडिटर के रूप में उपयोग कर सकते हैं। सी भाषा विस्तार सूची के लिए वाक्यविन्यास हाइलाइटिंग और स्टाइल असाइन * .cyc के लिए।

2

आप एक विशिष्ट फ़ाइल नाम एक्सटेंशन के साथ एक फ़ाइल के लिए कस्टम उपकरण चला सकते हैं। कस्टम बिल्ड नियम is here सेटअप करने के तरीके पर एमएसडीएन लाइब्रेरी आलेख। सावधान रहें कि यह अभी VS2010 में काफी टूटा हुआ है।

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