"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > आपके द्वारा प्रदान की गई लेख सामग्री के आधार पर निम्नलिखित अंग्रेजी प्रश्न और उत्तर शीर्षक तैयार किए गए हैं: `char`, `signed char`, और `unsigned char` की तुलना करते समय `char` टेम्पलेट इन्स्टेन्शियेशन में पूर्णांक प्रकारों से भिन्न व्यवहार क्यों करता है?

आपके द्वारा प्रदान की गई लेख सामग्री के आधार पर निम्नलिखित अंग्रेजी प्रश्न और उत्तर शीर्षक तैयार किए गए हैं: `char`, `signed char`, और `unsigned char` की तुलना करते समय `char` टेम्पलेट इन्स्टेन्शियेशन में पूर्णांक प्रकारों से भिन्न व्यवहार क्यों करता है?

2024-11-03 को प्रकाशित
ब्राउज़ करें:497

以下是根据您提供的文章内容生成的英文问答类标题:

Why does `char` behave differently from integer types in template instantiation when comparing `char`, `signed char`, and `unsigned char`?

चार, हस्ताक्षरित चार और अहस्ताक्षरित चार के बीच व्यवहार में अंतर

नीचे दिया गया कोड सफलतापूर्वक संकलित होता है, लेकिन चार पूर्णांक प्रकारों की तुलना में अलग व्यवहार करता है।

cout ::ikIsX  >() ::ikIsX  >() ::ikIsX  >() 

परिणाम तीन प्रकारों के लिए तीन इंस्टेंटेशन पैटर्न है: int8, uint8 और char। ऐसा क्यों होता है?

यही पूर्णांकों के लिए सत्य नहीं है: int और uint32 का परिणाम एक पैटर्न इंस्टेंशियेशन में होता है, औरsigned int का परिणाम दूसरे में होता है।

इसका कारण संभवतः यह है कि C, char का व्यवहार करता है। हस्ताक्षरित चार और अहस्ताक्षरित चार तीन अलग-अलग प्रकार के होते हैं। जबकि int,signed int के समान है। क्या यह सच है, या क्या मुझे कुछ याद आ रहा है?

#include 

using namespace std;

typedef   signed char       int8;
typedef unsigned char      uint8;
typedef   signed short      int16;
typedef unsigned short     uint16;
typedef   signed int        int32;
typedef unsigned int       uint32;
typedef   signed long long  int64;
typedef unsigned long long uint64;

struct TrueType {};
struct FalseType {};

template 
struct isX
{
   typedef typename T::ikIsX ikIsX;
};


// Это  int==int32 неоднозначно
//template  bool getIsTrue();
template ::ikIsX  >() ::ikIsX  >() ::ikIsX  >() ::ikIsX  >() ::ikIsX  >() ::ikIsX  >() 

मैं जी 4.कुछ का उपयोग करता हूं

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3