अंग्रेज़ीफ्रेंचस्पेनिश

Ad


ऑनवर्क्स फ़ेविकॉन

m4posix - क्लाउड में ऑनलाइन

उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर पर ऑनवर्क्स मुफ्त होस्टिंग प्रदाता में m4posix चलाएं

यह कमांड m4posix है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।

कार्यक्रम:

नाम


एम4 - मैक्रो प्रोसेसर

SYNOPSIS


m4 [-एस] [-डी नाम[=लहर]]... [-u नाम]... पट्टिका...

वर्णन


RSI m4 यूटिलिटी एक मैक्रो प्रोसेसर है जो एक या अधिक टेक्स्ट फ़ाइलों को पढ़ेगा, उन्हें प्रोसेस करेगा
उनके शामिल मैक्रो स्टेटमेंट के अनुसार, और परिणामों को मानक आउटपुट में लिखें।

विकल्प


RSI m4 उपयोगिता POSIX.1‐2008 की आधार परिभाषाओं की मात्रा के अनुरूप होगी, अनुभाग 12.2,
उपयोगिता वाक्य - विन्यास दिशानिर्देश, सिवाय इसके कि के आदेश -डी और -u विकल्प होंगे
महत्वपूर्ण, और विकल्पों को ऑपरेंड के साथ जोड़ा जा सकता है।

निम्नलिखित विकल्पों का समर्थन किया जाएगा:

-एस के लिए लाइन सिंक्रोनाइज़ेशन आउटपुट सक्षम करें c99 प्रीप्रोसेसर चरण (अर्थात्,
#रेखा निर्देश)।

-डी नाम[=लहर]
परिभाषित करें नाम सेवा मेरे लहर या शून्य करने के लिए यदि =लहर छोड़ा गया है।

-u नाम अपरिभाषित नाम.

ऑपरेंड


निम्नलिखित ऑपरेंड का समर्थन किया जाएगा:

पट्टिका संसाधित की जाने वाली टेक्स्ट फ़ाइल का पथनाम। अगर कोई नहीं पट्टिका दिया गया है, या यदि है '-',
मानक इनपुट पढ़ा जाएगा.

एसटीडीआईएन


मानक इनपुट एक टेक्स्ट फ़ाइल होगी जिसका उपयोग यदि नहीं किया जाता है पट्टिका ऑपरेंड दिया गया है, या यदि यह है
is '-'.

इनपुट फ़ाइलें


द्वारा नामित इनपुट फ़ाइल पट्टिका ऑपरेंड एक टेक्स्ट फ़ाइल होगी।

वातावरण चर


निम्नलिखित पर्यावरण चर के निष्पादन को प्रभावित करेगा m4:

लैंग अंतरराष्ट्रीयकरण चर के लिए एक डिफ़ॉल्ट मान प्रदान करें जो सेट नहीं हैं या
शून्य। (POSIX.1‐2008 की बेस डेफिनिशन वॉल्यूम देखें, अनुभाग 8.2,
अंतर्राष्ट्रीयकरण चर अंतर्राष्ट्रीयकरण की प्राथमिकता के लिए
स्थानीय श्रेणियों के मूल्यों को निर्धारित करने के लिए उपयोग किए जाने वाले चर।)

LC_ALL यदि एक गैर-रिक्त स्ट्रिंग मान पर सेट है, तो अन्य सभी के मानों को ओवरराइड करें
अंतर्राष्ट्रीयकरण चर।

एलसी_CTYPE पाठ डेटा के बाइट्स के अनुक्रमों की व्याख्या के लिए स्थान निर्धारित करें
वर्णों के रूप में (उदाहरण के लिए, एकल-बाइट बहु-बाइट वर्णों के विपरीत
तर्क और इनपुट फ़ाइलें)।

एलसी_MESSAGES
उस स्थान का निर्धारण करें जिसका उपयोग प्रारूप और सामग्री को प्रभावित करने के लिए किया जाना चाहिए
मानक त्रुटि के लिए लिखे गए नैदानिक ​​संदेश।

एनएलएसपीएटीएच के प्रसंस्करण के लिए संदेश कैटलॉग का स्थान निर्धारित करें एलसी_MESSAGES.

अतुल्यकालिक पत्रिका


चूक।

एसटीडीओयूटी


मैक्रो के लिए संसाधित होने के बाद मानक आउटपुट इनपुट फ़ाइलों के समान होगा
विस्तार।

एसटीडीईआरआर


मानक त्रुटि का उपयोग स्ट्रिंग्स को प्रदर्शित करने के लिए किया जाएगा ग़लती से छापना मैक्रो, मैक्रो ट्रेसिंग
द्वारा सक्षम किया गया ट्रेसन मैक्रो, द्वारा लिखित मैक्रोज़ के लिए परिभाषित पाठ डंपडेफ़ मैक्रो, या
निदान संदेशों के लिए.

आउटपुट फ़ाइलें


कोई नहीं.

विस्तारित वर्णन


RSI m4 उपयोगिता इनपुट से प्रत्येक टोकन की तुलना बिल्ट-इन के सेट से करेगी
उपयोगकर्ता-परिभाषित मैक्रोज़. यदि टोकन मैक्रो के नाम से मेल खाता है, तो टोकन होगा
मैक्रो के परिभाषित पाठ, यदि कोई हो, द्वारा प्रतिस्थापित किया गया और मैक्रो नामों के मिलान के लिए पुनः स्कैन किया गया।
एक बार जब टोकन का कोई भी भाग मैक्रो के नाम से मेल नहीं खाता है, तो इसे मानक पर लिखा जाएगा
आउटपुट. मैक्रोज़ के पास तर्क हो सकते हैं, ऐसी स्थिति में तर्कों को प्रतिस्थापित किया जाएगा
परिभाषित पाठ को दोबारा स्कैन करने से पहले।

मैक्रो कॉल का रूप इस प्रकार है:

नाम(आर्ग1, आर्ग2, ..., आर्गन)

मैक्रो नामों में अक्षर, अंक और अंडरस्कोर शामिल होंगे, जहां पहला अक्षर है
एक अंक नहीं है. इस फॉर्म के टोकन को मैक्रोज़ के रूप में नहीं माना जाएगा।

आवेदन यह सुनिश्चित करेगा कि के नाम का तुरंत अनुसरण करता है
मैक्रो. यदि मैक्रो के नाम से मेल खाने वाले टोकन का अनुसरण नहीं किया जाता है
कोष्ठक>, इसे बिना तर्क के उस मैक्रो के उपयोग के रूप में नियंत्रित किया जाता है।

यदि मैक्रो नाम के बाद a आता है , इसके तर्क हैं
-के बीच अलग-अलग टोकन और मिलान
कोष्ठक>. प्रत्येक तर्क से पहले आने वाले गैर-उद्धृत श्वेत-स्पेस वर्णों को नजरअंदाज कर दिया जाएगा।
अनुगामी श्वेत-अंतरिक्ष वर्णों सहित अन्य सभी वर्ण बरकरार रखे गए हैं।
अक्षर बीच में घिरे हुए हैं और पात्र नहीं
तर्कों का परिसीमन करें।

तर्कों को स्थितिगत रूप से परिभाषित और संदर्भित किया जाता है। डोर "$ 1" परिभाषित पाठ में
पहले तर्क से प्रतिस्थापित किया जाएगा। सिस्टम कम से कम नौ तर्कों का समर्थन करेगा;
स्ट्रिंग्स का उपयोग करके केवल पहले नौ को संदर्भित किया जा सकता है "$ 1" सेवा मेरे "$ 9", सहित।
स्ट्रिंग "$ 0" मैक्रो के नाम से बदल दिया गया है. डोर "$ #" द्वारा प्रतिस्थापित किया जाता है
एक स्ट्रिंग के रूप में तर्कों की संख्या. डोर "$*" सभी की एक सूची द्वारा प्रतिस्थापित किया गया है
तर्क, द्वारा अलग किए गए पात्र। डोर "$@" सभी की एक सूची द्वारा प्रतिस्थापित किया जाता है
द्वारा अलग किए गए तर्कों का वर्ण, और प्रत्येक तर्क का उपयोग करके उद्धृत किया गया है
वर्तमान बाएँ और दाएँ उद्धरण तार। डोर "${" अनिर्दिष्ट व्यवहार उत्पन्न करता है।

यदि मैक्रो परिभाषा में दिए गए तर्कों की तुलना में कम तर्क दिए गए हैं, तो छोड़े गए तर्क
शून्य मान लिया जाता है। यदि इसमें दिए गए से अधिक तर्क दिए गए हैं तो यह कोई त्रुटि नहीं है
स्थूल परिभाषा.

बाएँ और दाएँ मिलान के बीच घिरे किसी भी अक्षर को कोई विशेष अर्थ नहीं दिया गया है
स्ट्रिंग्स को उद्धृत करना, लेकिन उद्धृत करने वाली स्ट्रिंग्स को स्वयं ही खारिज कर दिया जाता है। डिफ़ॉल्ट रूप से, बाएँ
उद्धरण स्ट्रिंग में गंभीर उच्चारण (बैककोट) और दायां उद्धरण स्ट्रिंग शामिल है
एक तीव्र उच्चारण (एकल-उद्धरण) से युक्त; यह भी देखें परिवर्तन उद्धरण मैक्रो।

टिप्पणियाँ लिखी जाती हैं लेकिन मैक्रो नामों के मिलान के लिए स्कैन नहीं की जाती हैं; डिफ़ॉल्ट रूप से, प्रारंभ-
टिप्पणी स्ट्रिंग में शामिल हैं चरित्र और अंत-टिप्पणी स्ट्रिंग शामिल हैं
एक का . यह भी देखें चेंजकॉम और डीएनएलआई मैक्रोज़.

RSI m4 उपयोगिता निम्नलिखित अंतर्निहित मैक्रोज़ उपलब्ध कराएगी। उन्हें पुनः परिभाषित किया जा सकता है,
लेकिन एक बार ऐसा हो जाने पर मूल अर्थ खो जाता है। जब तक उनके मान शून्य नहीं होंगे
अन्यथा कहा। नीचे दिए गए विवरण में, शब्द परिभाषित करने टेक्स्ट के मूल्य को संदर्भित करता है
मैक्रो: दूसरा तर्क परिभाषित मैक्रो, अन्य बातों के अलावा। के लिए छोड़कर
के लिए पहला तर्क विकसित करना मैक्रो, अंतर्निहित मैक्रोज़ के लिए सभी संख्यात्मक तर्क होंगे
दशमलव मान के रूप में व्याख्या की गई। स्ट्रिंग मान को परिभाषित पाठ के रूप में उत्पादित किया जाता है
दिसंबर, divnum, इन्क्र, अनुक्रमणिका, लेन, तथा sysval अंतर्निर्मित मैक्रोज़ के रूप में होंगे
सी भाषा में परिभाषित दशमलव-स्थिरांक।

चेंजकॉम RSI चेंजकॉम मैक्रो आरंभ-टिप्पणी और अंत-टिप्पणी स्ट्रिंग सेट करेगा। कोई साथ
तर्क, टिप्पणी तंत्र अक्षम कर दिया जाएगा। एक भी गैर-शून्य के साथ
तर्क, वह तर्क आरंभ-टिप्पणी और बन जाएगा करेगा
अंत-टिप्पणी स्ट्रिंग बनें। दो गैर-शून्य तर्कों के साथ, पहला तर्क
आरंभ-टिप्पणी स्ट्रिंग बन जाएगी और दूसरा तर्क बन जाएगा
अंत-टिप्पणी स्ट्रिंग. यदि कोई भी तर्क प्रदान किया गया है तो व्यवहार अनिर्दिष्ट है
लेकिन शून्य. सिस्टम कम से कम पांच अक्षरों की टिप्पणी स्ट्रिंग का समर्थन करेगा।

परिवर्तन उद्धरण
RSI परिवर्तन उद्धरण मैक्रो आरंभ-उद्धरण और अंत-उद्धरण स्ट्रिंग सेट करेगा। कोई साथ
तर्क, उद्धरण स्ट्रिंग को डिफ़ॉल्ट मानों पर सेट किया जाएगा (अर्थात, '')।
यदि कोई एक तर्क है या कोई एक तर्क है तो व्यवहार अनिर्दिष्ट है
व्यर्थ। दो गैर-शून्य तर्कों के साथ, पहला तर्क प्रारंभ बन जाएगा-
उद्धरण स्ट्रिंग और दूसरा तर्क अंतिम-उद्धरण स्ट्रिंग बन जाएगा। प्रणाली
कम से कम पांच अक्षरों की उद्धरण स्ट्रिंग का समर्थन करेगा।

दिसंबर का परिभाषित पाठ दिसंबर मैक्रो इसका पहला तर्क होगा जिसे घटाया जाएगा
1. किसी गैर-संख्यात्मक युक्त तर्क को निर्दिष्ट करना एक त्रुटि होगी
पात्र। यदि व्यवहार अनिर्दिष्ट है दिसंबर द्वारा तुरंत अनुसरण नहीं किया जाता है
ए .

परिभाषित दूसरा तर्क उस मैक्रो का परिभाषित पाठ बन जाएगा जिसका नाम है
पहला तर्क. यह अनिर्दिष्ट है कि क्या परिभाषित मैक्रो पहले से सभी को हटा देता है
इसके पहले तर्क द्वारा नामित मैक्रो की परिभाषाएँ या सभी को संरक्षित करती हैं
मैक्रो की वर्तमान परिभाषा. यदि व्यवहार अनिर्दिष्ट है परिभाषित नहीं है
इसके तुरंत बाद ए .

रक्षा का परिभाषित पाठ रक्षा मैक्रो उद्धृत परिभाषा होगी (का उपयोग करके)।
इसके तर्कों के वर्तमान उद्धरण तार)। यदि व्यवहार अनिर्दिष्ट है रक्षा
a द्वारा तुरंत अनुसरण नहीं किया जाता है .

मोड़ना RSI m4 उपयोगिता नौ अस्थायी बफ़र्स बनाए रखती है, जिनकी संख्या 1 से 9 तक सम्मिलित है।
जब अंतिम इनपुट संसाधित हो जाता है, तो जो भी आउटपुट रखा गया है
इन बफ़र्स में मानक आउटपुट को बफ़र-संख्यात्मक क्रम में लिखा जाएगा।
RSI मोड़ना मैक्रो भविष्य के आउटपुट को उसके द्वारा निर्दिष्ट बफर में डायवर्ट करेगा
तर्क। कोई तर्क या 0 का तर्क निर्दिष्ट करने से सामान्य स्थिति फिर से शुरू नहीं होगी
आउटपुट प्रक्रिया. आउटपुट को ऋणात्मक संख्या वाली स्ट्रीम की ओर मोड़ दिया जाएगा
बाहर किया हुआ। यदि धारा संख्या 9 से बड़ी है तो व्यवहार कार्यान्वयन-परिभाषित है
निर्दिष्ट किया जाता है। किसी भी गैर युक्त तर्क को निर्दिष्ट करना एक त्रुटि होगी
संख्यात्मक वर्ण.

divnum का परिभाषित पाठ divnum मैक्रो वर्तमान आउटपुट की संख्या होगी
एक स्ट्रिंग के रूप में स्ट्रीम करें।

डीएनएलआई RSI डीएनएलआई मैक्रो कारण होगा m4 तक और सहित सभी इनपुट वर्णों को त्यागने के लिए
अगला .

डंपडेफ़ RSI डंपडेफ़ मैक्रो प्रत्येक के लिए मानक त्रुटि के लिए परिभाषित पाठ लिखेगा
मैक्रोज़ को तर्क के रूप में निर्दिष्ट किया गया है, या, यदि कोई तर्क निर्दिष्ट नहीं किया गया है, तो सभी के लिए
मैक्रोज़.

ग़लती से छापना RSI ग़लती से छापना मैक्रो मानक त्रुटि के लिए अपने तर्क लिखेगा। आचरण है
अनिर्दिष्ट यदि ग़लती से छापना a द्वारा तुरंत अनुसरण नहीं किया जाता है .

विकसित करना RSI विकसित करना मैक्रो अपने पहले तर्क का अंकगणितीय अभिव्यक्ति के रूप में मूल्यांकन करेगा,
कम से कम 32-बिट परिशुद्धता के साथ हस्ताक्षरित पूर्णांक अंकगणित का उपयोग करना। कम से कम
निम्नलिखित सी-भाषा ऑपरेटरों को प्राथमिकता के साथ समर्थित किया जाएगा,
साहचर्य, और व्यवहार जैसा कि वर्णित है अनुभाग 1.1.2.1, अंकगणित
शुद्धता और संचालन:

()
एकल +
एकल -
~

!
बाइनरी *
/
%
बाइनरी +
बाइनरी -
<<
>>
<
<=
>
>=
==
!=
बाइनरी और
^
|
&&
||

सिस्टम आईएसओ सी मानक की तरह ऑक्टल और हेक्साडेसिमल संख्याओं का समर्थन करेगा।
दूसरा तर्क, यदि निर्दिष्ट किया गया है, तो परिणाम के लिए मूलांक निर्धारित करेगा; यदि
तर्क रिक्त है या अनिर्दिष्ट है, डिफ़ॉल्ट 10 है। व्यवहार अनिर्दिष्ट है यदि
मूलांक 2 से 36 की सीमा के बाहर आता है। तीसरा तर्क, यदि
निर्दिष्ट, परिणाम में अंकों की न्यूनतम संख्या निर्धारित करता है। आचरण है
यदि तीसरा तर्क शून्य से कम है तो अनिर्दिष्ट। यह एक त्रुटि होगी
किसी भी गैर-संख्यात्मक वर्ण वाले दूसरे या तीसरे तर्क को निर्दिष्ट करें।
व्यवहार अनिर्दिष्ट है यदि विकसित करना a द्वारा तुरंत अनुसरण नहीं किया जाता है
कोष्ठक>.

ifdef यदि पहला तर्क ifdef मैक्रो परिभाषित है, परिभाषित पाठ होगा
दूसरा तर्क. अन्यथा, परिभाषित पाठ तीसरा तर्क होगा,
यदि निर्दिष्ट है, या शून्य स्ट्रिंग, यदि नहीं। यदि व्यवहार अनिर्दिष्ट है ifdef
a द्वारा तुरंत अनुसरण नहीं किया जाता है .

यदि नहीं तो RSI यदि नहीं तो मैक्रो तीन या अधिक तर्क लेता है। यदि पहले दो तर्क
बराबर स्ट्रिंग्स के रूप में तुलना करें (दोनों तर्कों के मैक्रो विस्तार के बाद), परिभाषित
text तीसरा तर्क होगा। यदि पहले दो तर्कों की तुलना नहीं की जाती है
समान तार और तीन तर्क हैं, परिभाषित पाठ शून्य होगा। अगर
पहले दो तर्क समान स्ट्रिंग के रूप में तुलना नहीं करते हैं और चार या हैं
पाँच तर्क, परिभाषित पाठ चौथा तर्क होगा। यदि पहले दो
तर्क समान स्ट्रिंग के रूप में तुलना नहीं करते हैं और छह या अधिक तर्क हैं,
पहले तीन तर्क खारिज कर दिए जाएंगे और प्रसंस्करण फिर से शुरू होगा
शेष तर्क. यदि व्यवहार अनिर्दिष्ट है यदि नहीं तो नहीं है
इसके तुरंत बाद ए .

शामिल के लिए परिभाषित पाठ शामिल मैक्रो नामित फ़ाइल की सामग्री होगी
पहले तर्क से. यदि फ़ाइल को पढ़ा नहीं जा सका तो यह एक त्रुटि होगी।
व्यवहार अनिर्दिष्ट है यदि शामिल a द्वारा तुरंत अनुसरण नहीं किया जाता है
कोष्ठक>.

इन्क्र का परिभाषित पाठ इन्क्र मैक्रो इसका पहला तर्क होगा जिसे बढ़ाया जाएगा
1. किसी गैर-संख्यात्मक युक्त तर्क को निर्दिष्ट करना एक त्रुटि होगी
पात्र। यदि व्यवहार अनिर्दिष्ट है इन्क्र द्वारा तुरंत अनुसरण नहीं किया जाता है
ए .

अनुक्रमणिका का परिभाषित पाठ अनुक्रमणिका मैक्रो पहली वर्ण स्थिति होगी (जैसा कि a
स्ट्रिंग) पहले तर्क में जहां दूसरे तर्क से मेल खाती एक स्ट्रिंग शुरू होती है
(शून्य मूल), या −1 यदि दूसरा तर्क घटित नहीं होता है। आचरण है
अनिर्दिष्ट यदि अनुक्रमणिका a द्वारा तुरंत अनुसरण नहीं किया जाता है .

लेन का परिभाषित पाठ लेन मैक्रो की लंबाई (एक स्ट्रिंग के रूप में) होगी
पहला तर्क. यदि व्यवहार अनिर्दिष्ट है लेन तुरंत पालन नहीं किया जाता
ए द्वारा .

m4निकास से बाहर निकलें m4 उपयोगिता। यदि पहला तर्क निर्दिष्ट है, तो यह निकास है
कोड. डिफ़ॉल्ट शून्य है. किसी तर्क को निर्दिष्ट करना एक त्रुटि होगी
जिसमें कोई भी गैर-संख्यात्मक वर्ण हो।

m4रैप ईओएफ पहुंचने पर पहला तर्क संसाधित किया जाएगा। यदि m4रैप मैक्रो
कई बार उपयोग किया जाता है, निर्दिष्ट तर्कों को क्रम में संसाधित किया जाएगा
जिसमें m4रैप मैक्रोज़ संसाधित किए गए. यदि व्यवहार अनिर्दिष्ट है m4रैप
a द्वारा तुरंत अनुसरण नहीं किया जाता है .

maketemp परिभाषित पाठ किसी भी अनुगामी के साथ पहला तर्क होगा 'एक्स' अक्षर
एक स्ट्रिंग के रूप में वर्तमान प्रक्रिया आईडी से प्रतिस्थापित किया गया। व्यवहार अनिर्दिष्ट है
if maketemp a द्वारा तुरंत अनुसरण नहीं किया जाता है .

मक्सटेम्प पहला तर्क एक खाली फ़ाइल बनाने के लिए एक टेम्पलेट के रूप में लिया जाएगा
अनुगामी 'एक्स' वर्णों को पोर्टेबल फ़ाइल नाम के वर्णों से बदल दिया गया
अक्षरों का समूह। यदि पहला तर्क समाप्त नहीं होता है तो व्यवहार अनिर्दिष्ट है
कम से कम छह 'एक्स' पात्र। यदि कोई अस्थायी फ़ाइल सफलतापूर्वक बनाई जाती है, तो
मैक्रो का परिभाषित पाठ नई फ़ाइल का नाम होगा। उपयोगकर्ता आईडी
फ़ाइल की प्रक्रिया की प्रभावी उपयोगकर्ता आईडी पर सेट किया जाएगा। समूह आईडी
फ़ाइल की मूल निर्देशिका या फ़ाइल की समूह आईडी पर सेट किया जाएगा
प्रक्रिया की प्रभावी समूह आईडी. फ़ाइल एक्सेस अनुमति बिट्स सेट हैं
ऐसा कि केवल स्वामी ही फ़ाइल को पढ़ और लिख सकता है, चाहे कुछ भी हो
वर्तमान umask प्रक्रिया का. यदि कोई फ़ाइल नहीं बनाई जा सकी, तो परिभाषित पाठ
मैक्रो की खाली स्ट्रिंग होगी. यदि व्यवहार अनिर्दिष्ट है मक्सटेम्प
a द्वारा तुरंत अनुसरण नहीं किया जाता है .

पॉपडेफ़ RSI पॉपडेफ़ मैक्रो अपने तर्कों की वर्तमान परिभाषा को हटा देगा, प्रतिस्थापित करेगा
वह परिभाषा पिछले वाले के साथ। यदि कोई पिछली परिभाषा नहीं है, तो
मैक्रो अपरिभाषित है. यदि व्यवहार अनिर्दिष्ट है पॉपडेफ़ तुरंत नहीं है
इसके बाद ए .

पुशडेफ़ RSI पुशडेफ़ मैक्रो के बराबर होगा परिभाषित अपवाद के साथ मैक्रो
यह भविष्य में पुनर्प्राप्ति के लिए किसी भी मौजूदा परिभाषा को संरक्षित करेगा
पॉपडेफ़ मैक्रो. यदि व्यवहार अनिर्दिष्ट है पुशडेफ़ तुरंत पालन नहीं किया जाता
ए द्वारा .

पाली के लिए परिभाषित पाठ पाली मैक्रो इसकी अल्पविराम से अलग की गई सूची होगी
पहले वाले को छोड़कर अन्य तर्क। प्रत्येक तर्क को वर्तमान का उपयोग करके उद्धृत किया जाएगा
तार उद्धृत करना. यदि व्यवहार अनिर्दिष्ट है पाली तुरंत नहीं है
इसके बाद ए .

शामिल करें RSI शामिल करें मैक्रो के बराबर होगा शामिल मैक्रो, सिवाय इसके कि यह
यदि फ़ाइल पहुंच योग्य नहीं है तो कोई त्रुटि नहीं होगी। व्यवहार अनिर्दिष्ट है
if शामिल करें a द्वारा तुरंत अनुसरण नहीं किया जाता है .

substr के लिए परिभाषित पाठ substr मैक्रो पहले का सबस्ट्रिंग होगा
दूसरे द्वारा निर्दिष्ट शून्य-ऑफ़सेट वर्ण स्थिति से शुरू होने वाला तर्क
तर्क। तीसरा तर्क, यदि निर्दिष्ट किया गया है, तो वर्णों की संख्या होगी
चुनना; यदि निर्दिष्ट नहीं है, तो प्रारंभिक बिंदु से अंत तक के अक्षर
पहला तर्क परिभाषित पाठ बन जाएगा। इसमें कोई त्रुटि नहीं होगी
पहले तर्क के अंत और परिभाषा से परे एक प्रारंभिक बिंदु निर्दिष्ट करें
पाठ शून्य होगा. किसी तर्क को निर्दिष्ट करना एक त्रुटि होगी
गैर-संख्यात्मक वर्ण. यदि व्यवहार अनिर्दिष्ट है substr नहीं है
इसके तुरंत बाद ए .

syscmd RSI syscmd मैक्रो अपने पहले तर्क की व्याख्या शेल कमांड लाइन के रूप में करेगा।
टेक्स्ट को परिभाषित करना उस कमांड का स्ट्रिंग परिणाम होगा। स्ट्रिंग परिणाम
परिभाषित पाठ सेट करते समय मैक्रोज़ के लिए दोबारा स्कैन नहीं किया जाएगा। उत्पादन नही
पुनर्निर्देशन द्वारा किया जाएगा m4 उपयोगिता। से निकास स्थिति मान
का उपयोग करके कमांड को पुनः प्राप्त किया जा सकता है sysval मैक्रो. यदि व्यवहार अनिर्दिष्ट है
syscmd a द्वारा तुरंत अनुसरण नहीं किया जाता है .

sysval का परिभाषित पाठ sysval मैक्रो उपयोगिता का निकास मूल्य होगा
द्वारा अंतिम बार आह्वान किया गया syscmd मैक्रो (एक स्ट्रिंग के रूप में)।

ट्रेसन RSI ट्रेसन मैक्रो तर्क के रूप में निर्दिष्ट मैक्रोज़ के लिए ट्रेसिंग सक्षम करेगा,
या, यदि सभी मैक्रोज़ के लिए कोई तर्क निर्दिष्ट नहीं किया गया है। ट्रेस आउटपुट होगा
अनिर्दिष्ट प्रारूप में मानक त्रुटि के लिए लिखा गया।

ट्रेसऑफ़ RSI ट्रेसऑफ़ मैक्रो तर्क के रूप में निर्दिष्ट मैक्रोज़ के लिए ट्रेसिंग को अक्षम कर देगा,
या, यदि सभी मैक्रोज़ के लिए कोई तर्क निर्दिष्ट नहीं किया गया है।

अनुवाद करना का परिभाषित पाठ अनुवाद करना प्रत्येक के साथ मैक्रो पहला तर्क होगा
दूसरे तर्क में आने वाले वर्ण को संगत के साथ बदल दिया जाता है
तीसरे तर्क से चरित्र. यदि कोई प्रतिस्थापन वर्ण निर्दिष्ट नहीं है
कुछ स्रोत वर्ण क्योंकि दूसरा तर्क तीसरे से अधिक लंबा है
तर्क, वह वर्ण पहले तर्क से हटा दिया जाएगा अनुवाद करना's
पाठ को परिभाषित करना. व्यवहार अनिर्दिष्ट है यदि '-' चरित्र भीतर प्रकट होता है
पहले या अंतिम अक्षर के अलावा कहीं भी दूसरा या तीसरा तर्क।
यदि एक ही वर्ण एक से अधिक बार प्रकट होता है तो व्यवहार अनिर्दिष्ट है
दूसरा तर्क. यदि व्यवहार अनिर्दिष्ट है अनुवाद करना तुरंत नहीं है
इसके बाद ए .

अपरिभाषित RSI अपरिभाषित मैक्रो सभी परिभाषाओं को हटा देगा (जिनमें उपयोग करके संरक्षित की गई परिभाषाएँ भी शामिल हैं)।
la पुशडेफ़ मैक्रो) इसके तर्कों द्वारा नामित मैक्रोज़ का। आचरण है
अनिर्दिष्ट यदि अपरिभाषित a द्वारा तुरंत अनुसरण नहीं किया जाता है .

खोलना RSI खोलना मैक्रो अस्थायी बफ़र्स में किसी भी पाठ के तत्काल आउटपुट का कारण बनेगा
यदि कोई तर्क निर्दिष्ट नहीं है तो इसे तर्क या सभी अस्थायी बफ़र्स के रूप में नामित किया गया है।
बफ़र्स को अन्य अस्थायी बफ़र्स में परिवर्तित किया जा सकता है। अविभाज्य होगा
अस्थायी बफ़र की सामग्री को त्यागें। व्यवहार अनिर्दिष्ट है यदि कोई
तर्क में कोई भी गैर-संख्यात्मक वर्ण शामिल है।

बाहर निकलें स्थिति


निम्नलिखित निकास मान लौटाए जाएंगे:

0 सफल समापन।

>0 कोई त्रुटि उत्पन्न हुई

अगर m4निकास मैक्रो का उपयोग किया जाता है, निकास मान इनपुट फ़ाइल द्वारा निर्दिष्ट किया जा सकता है।

परिणामों OF त्रुटियों


चूक।

RSI निम्नलिखित वर्गों रहे जानकारीपूर्ण।

आवेदन उपयोग


RSI रक्षा मैक्रो मैक्रोज़, विशेष रूप से बिल्ट-इन का नाम बदलने के लिए उपयोगी है।

जबसे विकसित करना आईएसओ सी मानक का पालन करते हुए, कुछ परिचालनों में अपरिभाषित व्यवहार होता है। कुछ में
कार्यान्वयन, विभाजन या शून्य से शेष एक घातक संकेत का कारण बनता है, भले ही विभाजन हो
की शॉर्ट-सर्किट शाखा पर होता है "&&" or "||". कोई भी ऑपरेशन जो ओवरफ्लो हो जाता है
हस्ताक्षरित अंकगणित अपरिभाषित व्यवहार उत्पन्न करता है। इसी तरह, का उपयोग कर पाली ऑपरेटरों के साथ ए
शिफ्ट राशि जो सकारात्मक नहीं है और परिशुद्धता से छोटी है, अपरिभाषित है
किसी ऋणात्मक संख्या को दाईं ओर स्थानांतरित करना। ऐतिहासिक रूप से, सभी कार्यान्वयन C- का पालन नहीं करते
भाषा प्राथमिकता नियम: '~' और '' की तुलना में कम थे '=='; '==' और '!=' कम नहीं थे
से '<', और '|' से कम नहीं था '^'; का उदार प्रयोग "()" इच्छित को बाध्य कर सकता है
इन गैर-अनुपालक कार्यान्वयनों के साथ भी प्राथमिकता। इसके अलावा, कुछ पारंपरिक
कार्यान्वयन का इलाज किया गया '^' एक घातांक ऑपरेटर के रूप में, हालांकि अधिकांश कार्यान्वयन
अब उपयोग करें "**" इस प्रयोजन के लिए एक विस्तार के रूप में.

जब किसी मैक्रो को इसके माध्यम से गुणा करके परिभाषित किया गया हो पुशडेफ़ मैक्रो, यह अनिर्दिष्ट है या नहीं
la परिभाषित मैक्रो केवल सबसे हालिया परिभाषा को बदल देगा (जैसे कि इसके द्वारा)। पॉपडेफ़ और
पुशडेफ़), या परिभाषाओं के पूरे ढेर को एक ही परिभाषा से बदल दें (जैसे कि
by अपरिभाषित और पुशडेफ़). एक एप्लिकेशन जो इसके लिए विशेष व्यवहार चाहता है परिभाषित
इस मामले में मैक्रो इसे तदनुसार पुनः परिभाषित कर सकता है।

एप्लिकेशन का उपयोग करना चाहिए मक्सटेम्प अप्रचलित के बजाय स्थूल maketemp मैक्रो के लिए
अस्थायी फ़ाइलें बनाना.

उदाहरण


अगर फाइल m4src पंक्तियाँ शामिल हैं:

RSI मूल्य of 'बहुत' is "कभी भी"।
ifdef(`VER', ``कभी नहीं'' is परिभाषित सेवा मेरे be बहुत., देखें is नहीं परिभाषित।)
ifelse(VER, 1, ``कभी नहीं'' is `बहुत'।)
ifelse(VER, 2, ``कभी नहीं'' is `बहुत'., ``कभी नहीं'' is नहीं 2).
समाप्त

फिर आदेश

m4 m4src

या आदेश:

m4 -u देखें m4src

उत्पादन का उत्पादन:

RSI मूल्य of देखें is "कभी भी"।
देखें is नहीं परिभाषित।

VER 2 नहीं है.
समाप्त

आदेश:

m4 -डी देखें m4src

उत्पादन का उत्पादन:

RSI मूल्य of देखें is ""।
देखें is परिभाषित सेवा मेरे be .

VER 2 नहीं है.
समाप्त

आदेश:

m4 -डी वीईआर=1 m4src

उत्पादन का उत्पादन:

RSI मूल्य of देखें is "1"।
देखें is परिभाषित सेवा मेरे be 1.
देखें is 1.
देखें is नहीं 2.
समाप्त

आदेश:

m4 -डी वीईआर=2 m4src

उत्पादन का उत्पादन:

RSI मूल्य of देखें is "2"।
देखें is परिभाषित सेवा मेरे be 2.

VER 2 है.
समाप्त

औचित्य


ऐतिहासिक प्रणाली वी-आधारित व्यवहार का इलाज किया गया "${" मैक्रो परिभाषा में दो शाब्दिक के रूप में
पात्र। हालाँकि, इस अनुक्रम को अनिर्दिष्ट छोड़ दिया गया है ताकि कार्यान्वयन की पेशकश की जा सके
जैसे एक्सटेंशन "${11}" मतलब ग्यारहवाँ स्थितीय पैरामीटर। मैक्रोज़ अभी भी हो सकते हैं
शाब्दिक परिणाम के लिए नेस्टेड उद्धरण के उचित उपयोग के साथ परिभाषित किया गया है "${" आउटपुट में
पुनः स्कैन करने के बाद नेस्टेड उद्धरण हटा दिए जाते हैं।

में अनुवाद करना अंतर्निहित, ऐतिहासिक सिस्टम V-आधारित व्यवहार का इलाज किया गया '-' शाब्दिक रूप में; जीएनयू
व्यवहार इसे एक सीमा के रूप में मानता है। मानक का यह संस्करण किसी भी व्यवहार की अनुमति देता है।

भविष्य दिशानिर्देश


कोई नहीं.

onworks.net सेवाओं का उपयोग करके ऑनलाइन m4posix का उपयोग करें


फ्री सर्वर और वर्कस्टेशन

विंडोज और लाइनेक्स एप डाउनलोड करें

लिनक्स कमांड

Ad