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

C++ में alignof ऑपरेटर


ऑपरेटर एक प्रतीक है जिसका उपयोग प्रोग्रामिंग भाषा में कंपाइलर को कुछ ऑपरेशन करने के लिए संकेत देने के लिए किया जाता है।

alignof ऑपरेटर वह ऑपरेटर है जो दिए गए प्रकार के वेरिएबल पर लागू होने वाले अलाइनमेंट को वापस करता है। वापस किया गया मान बाइट्स में होता है।

सिंटैक्स

var align = alignof(type)

व्याख्या

  • alignof − ऑपरेटर का उपयोग इनपुट डेटा के अलाइनमेंट को वापस करने के लिए किया जाता है।

  • पैरामीटर प्रकार − वह डेटा प्रकार जिसका अलाइनमेंट वापस किया जाना है।

  • वापसी मान − बाइट्स में मान जिसे दिए गए डेटा प्रकार के लिए अलाइनमेंट के रूप में उपयोग किया जाना है।

उदाहरण

बेसिक डेटा प्रकारों के लिए alignof मान वापस करने का प्रोग्राम।

#include <iostream> using namespace std; int main(){    cout<<"char का अलाइनमेंट: "<<alignof(char)<< endl;    cout<<"int का अलाइनमेंट: "<<alignof(int)<<endl;    cout<<"float का अलाइनमेंट: "<<alignof(float)<< endl;    cout<<"double का अलाइनमेंट: "<<alignof(double)<< endl;    cout<<"पॉइंटर का अलाइनमेंट: "<<alignof(int*)<< endl;    return 0; }

आउटपुट

char का अलाइनमेंट: 1 int का अलाइनमेंट: 4 float का अलाइनमेंट: 4 double का अलाइनमेंट: 8 पॉइंटर का अलाइनमेंट: 8

उदाहरण

#include <iostream> using namespace std; struct basic {    int i;    float f;    char s; }; struct Empty { }; int main(){    cout<<"10 एलिमेंट्स के कैरेक्टर सरणी का अलाइनमेंट: "<<alignof(char[10])<<endl;    cout<<"10 एलिमेंट्स के इंटीजर सरणी का अलाइनमेंट: "<<alignof(int[10])<<endl;    cout<<"10 एलिमेंट्स के फ्लोट सरणी का अलाइनमेंट: "<<alignof(float[10])<<endl;    cout<<"क्लास basic का अलाइनमेंट: "<<alignof(basic)<<endl;    cout<<"खाली क्लास का अलाइनमेंट: "<<alignof(Empty)<<endl;    return 0; }

आउटपुट

10 एलिमेंट्स के कैरेक्टर सरणी का अलाइनमेंट: 1 10 एलिमेंट्स के इंटीजर सरणी का अलाइनमेंट: 4 10 एलिमेंट्स के फ्लोट सरणी का अलाइनमेंट: 4 क्लास basic का अलाइनमेंट: 4 खाली क्लास का अलाइनमेंट: 1

sizeof() ऑपरेटर C++ प्रोग्रामिंग भाषा में एक यूनरी ऑपरेटर है जिसका उपयोग ऑपरेंड के आकार की गणना के लिए किया जाता है।

उदाहरण

यह प्रोग्राम sizeof ऑपरेटर और alignof ऑपरेटर के बीच अंतर दिखाने के लिए है।

#include <iostream> using namespace std; int main(){    cout<<"char का अलाइनमेंट: "<<alignof(char)<<endl;    cout<<"char का आकार: "<<sizeof(char)<<endl;    cout<<"पॉइंटर का अलाइनमेंट: "<<alignof(int*)<<endl;    cout<<"पॉइंटर का आकार: "<<sizeof(int*)<<endl;    cout<<"float का अलाइनमेंट: "<<alignof(float)<<endl;    cout<<"float का आकार: "<<sizeof(float)<<endl;    return 0; }

आउटपुट

char का अलाइनमेंट: 1 char का आकार: 1 पॉइंटर का अलाइनमेंट: 8 पॉइंटर का आकार: 8 float का अलाइनमेंट: 4 float का आकार: 4

  1. - C++ में कॉमा ऑपरेटर क्या है?

    कॉमा ऑपरेटर का उद्देश्य कई एक्सप्रेशन्स को एक साथ जोड़ना है। कॉमा से अलग की गई एक्सप्रेशन्स की सूची का मान सबसे दाएं एक्सप्रेशन का मान होता है। अनिवार्य रूप से, कॉमा का प्रभाव ऑपरेशन्स के एक क्रम को निष्पादित करना होता है। अन्य एक्सप्रेशन्स के मान छोड़ दिए जाएंगे। इसका मतलब है कि दाईं ओर की एक्सप्र

  1. - C++ में sizeof ऑपरेटर क्या है?

    sizeof एक कीवर्ड है, लेकिन यह एक कंपाइल-टाइम ऑपरेटर है जो बाइट्स में एक वेरिएबल या डेटा प्रकार का आकार निर्धारित करता है। sizeof ऑपरेटर का उपयोग क्लासेस, स्ट्रक्चर्स, यूनियन्स और किसी भी अन्य यूजर-डिफाइंड डेटा प्रकार के आकार को प्राप्त करने के लिए किया जा सकता है। sizeof का उपयोग करने का सिंटैक्स न

  1. - C++ में यूनरी ऑपरेटर

    यूनरी ऑपरेटर वे ऑपरेटर हैं जो एक नया मान उत्पन्न करने के लिए एक ऑपरेंड पर कार्य करते हैं। यूनरी ऑपरेटर निम्नलिखित हैं: ऑपरेटर्स विवरण इनडायरेक्शन ऑपरेटर (*) यह एक पॉइंटर वेरिएबल पर कार्य करता है और उस पॉइंटर पते पर मान के बराबर एक l-value लौटाता है। इसे पॉइंटर को डीरेफरेंस करना कहा जाता है।