-
C में अपना खुद का sizeof कैसे इम्प्लीमेंट करें
C में sizeof() ऑपरेटर का उपयोग करके किसी वेरिएबल का आकार जानने के लिए, हम उसका एड्रेस लेते हैं और फिर उसमें 1 जोड़कर अंतर निकालते हैं। यह तकनीक पॉइंटर अंकगणित पर आधारित है। कार्यप्रणाली जब हम किसी वेरिएबल x का एड्रेस &x लेते हैं और फिर &x + 1 करते हैं, तो कंपाइलर स्वचालित रूप से उस वेरिएबल
-
C में फ्लोटिंग पॉइंट संख्या में सेट बिट्स गिनना
इस समस्या में एक फ्लोटिंग पॉइंट मान दिया गया है। हमें इसके बाइनरी प्रतिनिधित्व में सेट बिट्स की संख्या ढूंढनी है। उदाहरण के लिए, यदि एक फ्लोटिंग पॉइंट संख्या 0.15625 है तो इसमें छह सेट बिट्स हैं। एक सामान्य C कंपाइलर सिंगल प्रिसिजन फ्लोटिंग पॉइंट प्रतिनिधित्व का उपयोग करता है। तो यह इस तरह दिखेगा।
-
C में putchar() का उपयोग करके long int प्रिंट करना
यहां हम देखेंगे कि C में putchar() फ़ंक्शन का उपयोग करके long int मान कैसे प्रिंट करें। हम C में printf() का उपयोग करके कुछ वेरिएबल्स के मान को आसानी से प्रिंट कर सकते हैं, लेकिन यहां प्रतिबंध है कि हम putchar() के अलावा किसी अन्य फ़ंक्शन का उपयोग नहीं कर सकते। जैसा कि हम जानते हैं कि putchar() का
-
main() के बिना चलने वाला C कोड कैसे लिखें
यहां हम देखेंगे कि क्या कोई प्रोग्राम main के बिना लिखा जा सकता है या नहीं? उत्तर हां है। हम ऐसा प्रोग्राम लिख सकते हैं जिसमें main() फ़ंक्शन न हो। कई स्थानों पर हमने देखा है कि main() प्रोग्राम निष्पादन का प्रवेश बिंदु है। केवल प्रोग्रामर के दृष्टिकोण से यह सच है। सिस्टम के दृष्टिकोण से यह सच नहीं
-
C में अपना खुद का memcpy() लिखें
यहां हम देखेंगे कि C में memcpy() फ़ंक्शन को कैसे लागू किया जाए। memcpy() फ़ंक्शन का उपयोग डेटा के एक ब्लॉक को एक स्थान से दूसरे स्थान पर कॉपी करने के लिए किया जाता है। memcpy() का सिंटैक्स निम्न है: void *memcpy(void *dest, const void *src, size_t num); अपना खुद का memcpy बनाने के लिए हमें दिए गए
-
C में bool का उपयोग
C में bool के रूप में कोई पूर्वनिर्धारित डेटा प्रकार नहीं है। हम enum का उपयोग करके bool बना सकते हैं। एक enum को bool के रूप में बनाया जाएगा, फिर false और true को enum के तत्व के रूप में डालेंगे। false पहली स्थिति में होगा इसलिए यह 0 रखेगा, और true दूसरी स्थिति में होगा इसलिए इसे मान 1 मिलेगा। अब ह
-
C प्रोग्रामिंग के बारे में रोचक तथ्य
यहां हम C प्रोग्रामिंग के बारे में कुछ रोचक तथ्य देखेंगे। ये निम्न हैं। कभी-कभी स्विच स्टेटमेंट के केस लेबल्स को if-else स्टेटमेंट के अंदर रखा जा सकता है। उदाहरण #include <stdio.h> int main() { int x = 2, y = 2; switch(x) { case 1: ; if (y == 5) {
-
C/C++ में nextafter() और nexttoward()
यहां हम C या C++ में nextafter() और nexttoward() फ़ंक्शन्स का प्रभाव देखेंगे। ये फ़ंक्शन्स math.h या cmath लाइब्रेरी में मौजूद हैं। यदि फ़ंक्शन्स nextafter(a, b) और nexttoward(a, b) की तरह हैं। ये फ़ंक्शन्स b की दिशा में a के बाद अगले प्रतिनिधित्व योग्य मान को ज्ञात करने के लिए उपयोग किए जाते हैं।
-
C में pthread_cancel()
pthread_cancel() का उपयोग थ्रेड आईडी द्वारा एक विशेष थ्रेड को रद्द करने के लिए किया जाता है। यह फ़ंक्शन थ्रेड को समाप्त करने के लिए एक रद्दीकरण अनुरोध भेजता है। pthread_cancel() का सिंटैक्स निम्न है: int pthread_cancel(pthread_t th); अब देखते हैं कि इस फ़ंक्शन का उपयोग करके थ्रेड्स को कैसे रद्द कर
-
C में pthread_equal()
pthread_equal() फ़ंक्शन का उपयोग यह जांचने के लिए किया जाता है कि दो थ्रेड्स समान हैं या नहीं। यह 0 या शून्येतर मान लौटाता है। समान थ्रेड्स के लिए यह शून्येतर लौटाएगा, अन्यथा 0 लौटाता है। इस फ़ंक्शन का सिंटैक्स निम्न है: int pthread_equal(pthread_t th1, pthread_t th2); अब pthread_equal() को क्रिया
-
C में pthread_self()
यहां हम देखेंगे कि C में pthread_self() का क्या प्रभाव होगा। pthread_self() फ़ंक्शन का उपयोग वर्तमान थ्रेड की आईडी प्राप्त करने के लिए किया जाता है। यह फ़ंक्शन मौजूदा थ्रेड्स की विशिष्ट रूप से पहचान कर सकता है। लेकिन यदि कई थ्रेड्स हैं और एक थ्रेड पूरा हो जाता है, तो उस आईडी का पुनः उपयोग किया जा सक
-
C में fork() और exec() में अंतर
यहां हम C में fork() और exec() सिस्टम कॉल के प्रभाव को देखेंगे। fork का उपयोग कॉलिंग प्रोसेस को डुप्लिकेट करके एक नई प्रोसेस बनाने के लिए किया जाता है। नई प्रोसेस चाइल्ड प्रोसेस होती है। निम्नलिखित गुण देखें। चाइल्ड प्रोसेस की अपनी विशिष्ट प्रोसेस आईडी होती है। चाइल्ड प्रोसेस की पैरेंट प्रोसेस आईड
-
C और C++ के बीच असंगतताएं
यहां हम C और C++ के बीच कुछ असंगतताएं देखेंगे। कुछ C कोड जो C कंपाइलर का उपयोग करके कंपाइल हो सकते हैं लेकिन C++ कंपाइलर में कंपाइल नहीं होते और त्रुटि देते हैं। हम फ़ंक्शन को एक सिंटैक्स का उपयोग करके परिभाषित कर सकते हैं जो आर्गुमेंट सूची के बाद आर्गुमेंट प्रकारों को वैकल्पिक रूप से निर्दिष्ट कर
-
C में स्वच्छ मैक्रोज़ (Hygienic Macros)
यहां हम C में स्वच्छ मैक्रोज़ देखेंगे। हम C में मैक्रोज़ के उपयोग को जानते हैं। लेकिन कभी-कभी यह पहचानकर्ताओं के आकस्मिक कैप्चर के कारण वांछित परिणाम नहीं देता है। यदि हम निम्नलिखित कोड देखते हैं, तो हम देख सकते हैं कि यह ठीक से काम नहीं कर रहा है। उदाहरण #include <stdio.h> #define INCREMENT
-
मौलिक डेटा प्रकार और व्युत्पन्न डेटा प्रकार में अंतर
यहां हम देखेंगे कि C या C++ में मौलिक डेटा प्रकार और व्युत्पन्न डेटा प्रकार के बीच मूल अंतर क्या हैं। मौलिक डेटा प्रकारव्युत्पन्न डेटा प्रकार मौलिक डेटा प्रकार को प्राथमिक डेटा प्रकार के रूप में भी जाना जाता है।व्युत्पन्न डेटा प्रकार मौलिक डेटा प्रकारों से बने होते हैं। कुछ मौलिक डेटा प्रकार है
-
C में FILE का डेटा प्रकार क्या है?
C में हमने फ़ाइलों का उपयोग किया है। फ़ाइलों को संभालने के लिए हम FILE प्रकार के पॉइंटर का उपयोग करते हैं। इसलिए FILE एक डेटा प्रकार है। इसे अपारदर्शी डेटा प्रकार (Opaque datatype) कहा जाता है। इसलिए इसका कार्यान्वयन छिपा होता है। FILE की परिभाषा सिस्टम विशिष्ट है। यह उबंटू सिस्टम में FILE की परिभाष
-
थ्रेड सिंक्रोनाइज़ेशन का उपयोग करके क्रम में संख्याएं प्रिंट करना
यहां हम देखेंगे कि अलग-अलग थ्रेड्स का उपयोग करके संख्याओं को सही क्रम में कैसे प्रिंट किया जाए। यहां हम n संख्या में थ्रेड्स बनाएंगे, फिर उन्हें सिंक्रोनाइज़ करेंगे। विचार यह है कि पहला थ्रेड 1 प्रिंट करेगा, फिर दूसरा थ्रेड 2 प्रिंट करेगा और इसी तरह आगे। जब एक थ्रेड प्रिंट करने का प्रयास करता है, तो
-
C में मल्टी-थ्रेडिंग का उपयोग करके रैखिक खोज
यहां हम देखेंगे कि सरणी में एक तत्व को खोजने के लिए मल्टी-थ्रेडिंग अवधारणा कैसे लागू करें। यहां दृष्टिकोण बहुत सरल है। हम कुछ थ्रेड्स बनाएंगे, फिर सरणी को विभिन्न भागों में विभाजित करेंगे। अलग-अलग थ्रेड अलग-अलग भागों में खोज करेंगे। उसके बाद, जब तत्व मिल जाता है, तो फ्लैग को सक्षम करके इसकी पहचान कर
-
C में सख्त उपनाम (Strict Aliasing) की आवश्यकता क्यों है?
यहां हम देखेंगे कि C में सख्त उपनाम का उपयोग क्यों करना चाहिए। उस भाग पर चर्चा करने से पहले, आइए एक कोड देखें और आउटपुट का विश्लेषण करने का प्रयास करें। उदाहरण #include <stdio.h> int temp = 5; int *var = &temp; int my_function(double *var) { temp = 1; *var = 5.10; // यह temp का मा
-
C में क्रिसमस ट्री प्रोग्राम
यहां हम एक दिलचस्प समस्या देखेंगे। इस समस्या में हम देखेंगे कि कैसे क्रिसमस ट्री को यादृच्छिक रूप से प्रिंट किया जाए। तो ट्री क्रिसमस ट्री लाइट्स की तरह झिलमिलाएगा। क्रिसमस ट्री प्रिंट करने के लिए, हम विभिन्न आकारों के पिरामिड को एक के नीचे एक प्रिंट करेंगे। सजावटी पत्तियों के लिए दिए गए कैरेक्टर्स