Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में is_signed टेम्पलेट

इस लेख में हम C++ STL में std::is_signed टेम्पलेट के कार्य, सिंटैक्स और उदाहरणों पर चर्चा करेंगे।

is_signed एक टेम्पलेट है जो <type_traits> हेडर फाइल के अंतर्गत आता है। यह टेम्पलेट जांचता है कि दिया गया टाइप T एक साइन्ड टाइप है या नहीं।

साइन्ड टाइप क्या है?

ये बेसिक अंकगणितीय टाइप्स हैं, जिनमें उनके साथ साइन वैल्यू होती है। सभी अंकगणितीय डेटा टाइप्स या तो साइन्ड होते हैं या अनसाइन्ड।

जैसे हम मानों को नेगेटिव में दिखाना चाहते हैं तो हम साइन्ड टाइप का उपयोग करते हैं।

जैसे: -1 साइन्ड int है और -1.009 साइन्ड फ्लोट है।

डिफ़ॉल्ट रूप से सभी टाइप्स साइन्ड होते हैं, उन्हें अनसाइन्ड बनाने के लिए हमें डेटा टाइप को अनसाइन्ड से प्रीफिक्स करना होगा।

सिंटैक्स

template <class T> is_signed;

पैरामीटर्स

टेम्पलेट में केवल टाइप T का एक पैरामीटर हो सकता है, और यह जांचता है कि T साइन्ड टाइप है या नहीं।

रिटर्न वैल्यू

यह एक बूलियन मान लौटाता है, यदि दिया गया टाइप साइन्ड टाइप है तो true, और यदि दिया गया टाइप साइन्ड टाइप नहीं है तो false।

उदाहरण

Input: is_signed<int>::value; Output: True
Input: is_signed<unsigned int>::value; Output: False

उदाहरण 1

#include <iostream>
#include <type_traits>
using namespace std;

class TP { };
enum TP_1 : int {};
enum class TP_2 : int {};

int main() {
    cout << boolalpha;
    cout << "checking for is_signed:";
    cout << "\nint: " << is_signed<int>::value;
    cout << "\nTP: " << is_signed<TP>::value;
    cout << "\nTP_1: " << is_signed<TP_1>::value;
    cout << "\nTP_2: " << is_signed<TP_2>::value;
    return 0;
}

आउटपुट

checking for is_signed:
Int: true
TP: false
TP_1: false
TP_2: false

उदाहरण 2

#include <iostream>
#include <type_traits>
using namespace std;

int main() {
    cout << boolalpha;
    cout << "checking for is_signed:";
    cout << "\nfloat: " << is_signed<float>::value;
    cout << "\nSigned int: " << is_signed<signed int>::value;
    cout << "\nUnsigned int: " << is_signed<unsigned int>::value;
    cout << "\ndouble: " << is_signed<double>::value;
    return 0;
}

आउटपुट

checking for is_signed:
Float: true
Signed int: true
Unsigned int: false
Double: true
  1. C++ में डायगोनल ट्रैवर्स II C++ में डायगोनल ट्रैवर्स II

    मान लीजिए हमारे पास nums नामक लिस्ट ऑफ लिस्ट है, हमें nums के सभी एलिमेंट्स को डायगोनल क्रम में दिखाना है।इसलिए, यदि इनपुट हैतो आउटपुट होगा [1,6,2,8,7,3,9,4,12,10,5,13,11,14,15,16]इसे हल करने के लिए, हम निम्न चरणों का पालन करेंगे:एक ऐरे ret परिभाषित करेंएक 2D ऐरे v परिभाषित करेंi := 0 से शुरू करें,

  1. C++ में प्रोसेस मारें C++ में प्रोसेस मारें

    मान लीजिए हमारे पास n प्रोसेस हैं, यहां प्रत्येक प्रोसेस की एक अद्वितीय आईडी होती है जिसे PID या प्रोसेस आईडी कहा जाता है और इसका PPID (पैरेंट प्रोसेस आईडी) भी होता है। प्रत्येक प्रोसेस का केवल एक पैरेंट प्रोसेस होता है, लेकिन उसके एक या अधिक चाइल्ड प्रोसेस हो सकते हैं। यह एक ट्री संरचना की तरह है।

  1. C++ में गिलहरी सिमुलेशन C++ में गिलहरी सिमुलेशन

    एक पेड़, एक गिलहरी, और कई नट्स हैं। स्थितियों को 2D ग्रिड में सेल द्वारा दर्शाया जाता है। आपका लक्ष्य गिलहरी के लिए सभी नट्स को इकट्ठा करके उन्हें एक-एक करके पेड़ के नीचे रखने के लिए न्यूनतम दूरी ढूंढना है। गिलहरी एक समय में अधिकतम एक नट ले जा सकती है और चार दिशाओं में आगे बढ़ सकती है - ऊपर, नीचे,