एमएस विंडोज का पता लगाएं


78

चुनौती

एक प्रोग्राम बनाएं जो Microsoft विंडोज पर चलने पर एक सत्य मान लौटाता है (सादगी के लिए हम विंडोज 7, 8.1 और 10 के साथ चिपके रहेंगे) और किसी अन्य ऑपरेटिंग सिस्टम (ओएसएक्स, फ्रीबीएसडी, लिनक्स) पर चलने पर एक गलत मूल्य।

नियम

  • कोड जो किसी प्लेटफ़ॉर्म पर चलने / संकलित करने में विफल रहता है, वह एक गलत मूल्य के रूप में नहीं गिना जाता है।

मानदंड जीतना

मैं इसे रूप में लेबल कर रहा हूं , इसलिए सबसे कम स्कोर जीतता है, लेकिन मुझे इस समस्या के रचनात्मक समाधान देखने में भी बहुत दिलचस्पी है।


7
क्या प्रोग्राम एक्ज़िट कोड द्वारा आउटपुट कर सकता है? ( सामान्य रूप से अनुमति दी गई है )
FlipTack

13
क्या आप एक निश्चित सूची दे सकते हैं कि किन ऑपरेटिंग सिस्टम पर काम करने की आवश्यकता है?
FlipTack

2
विंडोज आरटी के तहत परिणाम क्या होना चाहिए?
18

6
आप कुछ विशिष्ट गैर-विंडोज सिस्टम को निर्दिष्ट करना चाह सकते हैं जिन्हें समर्थित होना चाहिए। डॉस और OS2 जैसी चीजों के बारे में टिप्पणियों में कुछ बहसें हैं।
jpmc26

2
हमें शायद इस बारे में आम सहमति की आवश्यकता है कि बाहर निकलने के कोड के लिए क्या सत्य और झूठ के रूप में गिना जाता है; सामान्य सम्मेलन सत्य के लिए 0 है और असत्य के लिए कुछ भी, लेकिन कई जवाब इसे विपरीत मान रहे हैं, और "यदि कथन" परिभाषा स्पष्ट रूप से लागू नहीं होती है।

जवाबों:


75

विम, 2 बाइट्स

<C-a>1

विंडोज पर, <C-a>(ctrl + a) डिफ़ॉल्ट रूप से मैप किया जाता है Select All। यदि आप टाइप करें1 विंडोज में सेलेक्ट मोड में टाइप करते हैं, तो यह आपके द्वारा टाइप किए गए चयन को बदल देता है (1) बफर में 1 छोड़ देता है।

अन्य ऑपरेटिंग सिस्टम पर, <C-a>डिफ़ॉल्ट रूप से मैप किया जाता हैIncrement number । क्योंकि वेतन वृद्धि के लिए कोई संख्या नहीं है, यह एक नो-ऑप है, और फिर 1 गिनती बढ़ाता है लेकिन बफर के संदर्भ में एक नो-ऑप है।

1 विम में सत्य है, और एक खाली स्ट्रिंग मिथ्या है


3 कीस्ट्रोक्स की तरह दिखता है। Ctrl + a + 1
पावेल

12
मुझे लगता है कि इस मेटा पोस्ट के अनुसार meta.codegolf.stackexchange.com/questions/8995// विम उत्तर आम तौर पर बिना संशोधक के स्कोर किए जाते हैं (विशेषकर यह दिया जाता है कि पोस्ट पर पहला उत्तर <ctrl + a> 1 बाइट के लिए उदाहरण के रूप में उपयोग करता है)
nmjcman101

4
@Pavel यह है Ctrl + a, 1। यदि यह थे तो इसे Ctrl + a + 11 कीस्ट्रोके के रूप में गिना जाएगा।
कप्तान मैन

7
सुंदर, मुझे यह जवाब पसंद है!
DJMcMayhem

बल्कि सुंदर है, मुझे यह पसंद है।
दान

108

MATLAB, 4 बाइट्स

ispc

से प्रलेखन :

tf = ispcMATLAB® सॉफ़्टवेयर का संस्करण Microsoft® Windows® प्लेटफ़ॉर्म के लिए तार्किक 1 (सत्य) देता है। अन्यथा, यह तार्किक 0 (गलत) देता है।

कार्य भी हैं ismacऔर isunixमैं इसे उन कार्यों के बारे में जानने के लिए पाठक पर छोड़ता हूँ। Mego कृपया समझाने के लिए आरेख के लिए कहा ismacऔर isunixइसलिए मैं इसे यहाँ वर्णन करने की कोशिश की है:

यहाँ छवि विवरण दर्ज करें

यह एक आरेख के लिए नहीं पूछा गया था, ispcलेकिन मैं यह बता सकता हूं कि व्यवहार बहुत समान है, विकल्प के अलावा OSXऔर Unixसाथ Windows


दूसरा तरीका:

यहां getenv23 बाइट्स का उपयोग करने के साथ एक दूसरा तरीका है जो बुलेट प्रूफ होना चाहिए, जब तक कि एक और ऑपरेटिंग सिस्टम शुरू न हो W:

x=getenv('OS');x(1)==87

getenv 'name'खोज अंतर्निहित ऑपरेटिंग सिस्टम वातावरण सूची फार्म के पाठ के लिए name=valueहै, जहां nameइनपुट चरित्र वेक्टर है। यदि पाया जाता है, तो MATLAB® वर्ण वेक्टर मान लौटाता है। यदि निर्दिष्ट नाम नहीं मिल सकता है, तो एक खाली मैट्रिक्स वापस आ जाता है।


4
टिप्पणियाँ विस्तारित चर्चा के लिए नहीं हैं; इस वार्तालाप को बातचीत में स्थानांतरित कर दिया गया है ।
डेनिस

54

पायथन 2.7.10 , 24 बाइट्स

import os
0/('['>os.sep)

3 बाइट्स के लिए FlipTack का धन्यवाद

यह कार्यक्रम इस तथ्य का लाभ उठाता है कि \पथ विभाजक के रूप में उपयोग करने के लिए विंडोज एकमात्र ओएस है । आम तौर पर यह निराशाजनक और बुरा है, लेकिन एक बार के लिए यह वास्तव में एक फायदा है। विंडोज पर, '['>os.sepगलत है, और इस प्रकार 0/0गणना की जाती है, जिससे ZeroDivisionErrorगैर-शून्य निकास कोड के साथ एक और बाहर निकल जाता है। गैर-विंडोज प्लेटफार्मों पर, '['>os.sepसच है, अभिव्यक्ति बना रहा है 0/1, जो कुछ भी नहीं करता है, और प्रोग्राम एक्जिट कोड 0 से बाहर निकलता है।


डॉस भी पथ विभाजक के रूप में एक बैकस्लैश का उपयोग करता है और इसमें कम से कम एक पायथन 2 कार्यान्वयन है।
isanae

5
@isanae मैं शीर्षक अजगर 2.7 निर्दिष्ट करने के लिए संपादित किया है - डॉस पर केवल अजगर 2 कार्यान्वयन एक प्राचीन, गाड़ी 2.4.2 है
Mego

OS / 2 भी एक बैकस्लैश का उपयोग करता है और एक पायथन 2.7 कार्यान्वयन है;)
isanae

9
@isanae वहाँ, मैंने २..10.१० निर्दिष्ट किया। उस का एक बंदरगाह खोजने के लिए गुड लक।
मेगो

2
जाहिरा तौर पर इसे केवल 3 हाल ही के विंडोज़ संस्करणों पर सही परिणाम देने की आवश्यकता है और संभवतः हाल ही में सूचीबद्ध तीन अन्य प्रणालियों के समान हालिया वर्जन, OS2 और DOS कोई फर्क नहीं पड़ता,
जैसन

45

x86 असेंबली, 7 बाइट्स ( रेनमोरो के जवाब से प्रेरित )

31 DB 89 D8 40 CD 80

या

xor ebx, ebx 
mov eax, ebx
inc eax
int 0x80

विवरण

सबसे पहले, हम सेट करेंगे eaxकरने के लिए 1(के लिए सिस्टम कॉल संख्या exit(int val)के लिए Linux, FreeBSDऔर OSX)। फिर, हम इंटरप्ट गेट को कॉल करेंगे 0x80जो सिस्टम कॉल गेट है Linux, FreeBSDऔर OSX। यही कारण है कि कार्यक्रम की स्थिति के साथ बाहर निकलने के लिए कारण होगा ebxजो 0(false )।

Windows int 0x80एक अमान्य गेट है (यह 2esyscall गेट के रूप में उपयोग होता है) और प्रोग्राम को क्रैश कर देगा, जिससे यह एक सकारात्मक निकास कोड ( true) के साथ समाप्त हो जाएगा ।

संपादित करें: पर काम नहीं करेगाOSX 32 बिट (स्टैक द्वारा) पर एक अलग तर्क-पास सम्मेलन होने के बाद से यह ।

सन्दर्भ और आगे पढ़ना


3
ये तो बहुत खूब है!
z0rberg की

क्रैश मामलों में सच्चाई क्यों है? क्या ऐसा इसलिए है क्योंकि EAX (आमतौर पर रिटर्न वैल्यू) 1 है? इसके अलावा, EAX को प्रोग्राम शुरू होने पर 0 होने की गारंटी है? या आपको xor eax, eaxवहाँ की आवश्यकता है?
कोल जॉनसन

3
@ColeJohnson: OS से पता चला क्रैश (ऑपरेटिंग सिस्टम पर आमतौर पर x86 के साथ प्रयोग किया जाता है) कभी भी 0 का निकास कोड नहीं छोड़ता है, क्योंकि यह सफल समाप्ति के लिए आरक्षित है। (आम तौर पर एक्जिट कोड कुछ विजयी मूल्य होता है जो ओएस विशेष रूप से इस परिस्थिति के लिए सुरक्षित रखता है।) हालांकि, मुझे यकीन नहीं है कि यह 0 को गलत और 1 को प्रोग्राम एक्जिट कोड में सत्य के रूप में गिनने के लिए समझ में आता है, यह देखते हुए कि सामान्य सम्मेलन है सटीक विपरीत (0 केवल सत्य वास होने के नाते, उदाहरण के लिए मानक UNIX / Linux / POSIX प्रोग्राम falseकोड 1 के साथ trueबाहर निकलता है जबकि कोड 0 के साथ बाहर निकलता है)।

1
यह उत्तर स्पष्ट रूप से मानता है कि रजिस्ट्रार eaxऔर ebxप्रोग्राम स्टार्ट (नॉन-विंडोज) पर शून्य करने के लिए मंजूरी दे दी गई है, जो कि अगर मुझे सही याद है तो इसकी गारंटी नहीं है। यह भी स्पष्ट रूप से मानता है कि लिनक्स के लिए syscall तर्क-पासिंग सम्मेलन FreeBSD और OSX के लिए मेल खाता है, जो वास्तव में बहुत आश्चर्यजनक होगा।
zwol

1
@ सेबस्टियन-लॉरेन PPlesciuc अच्छा सवाल है। mov eax, 1का अनुवाद किया जाएगा \xB8\x01\x00\x00\x00, जो कि बहुत लंबा है जो सिर्फ रजिस्टर और कॉलिंग को स्थानांतरित करता है inc
शमूएल एच।

29

C, 44 43 38 36 बाइट्स

एक बाइट के लिए @Downgoat को धन्यवाद! 44 को पार कर गया अभी भी नियमित है 44
@ दो बाइट के लिए @ धन्यवाद!

f(){return
#ifdef WIN32
!
#endif
0;}

मूल रूप से मैं यह सुझाव देने जा रहा था कि आप बाइट्स का एक गुच्छा बचा सकते हैं और 0बाहर निकलकर ifdefबदल सकते 1हैं !, लेकिन मुझे लगता _WIN32+0है कि यह अभी भी बेहतर काम करता है।
नील

यदि c99 ठीक है, तो आप f को मुख्य में बदल सकते हैं और return 1;ifdef के अंदर चिपके रह सकते हैं और बाकी को हटा सकते हैं, क्योंकि c99 में बिना रिटर्न के मुख्य को 0. पर लौटना होगा
simon

11
यह एक संकलक निर्देश है। यदि यह एक विंडोज सिस्टम पर संकलित है और लिनक्स सिस्टम पर चलता है, उदाहरण के लिए, यह अभी भी वापस आ जाएगा 1.
माइकल जॉनसन

4
@MichealJohnson सं। मैं इसे लिनक्स पर संकलित कर सकता हूं (mingw32gcc msvc का उपयोग करके) snd को कोड मिलता है जो विंडोज़ पर चलने पर सही रिटर्न देता है। मुझे किसी भी विंडोज़-होस्टेड लिनक्स कंपाइलर का पता नहीं है। अगर आप "शराब" जैसी इम्यूलेशन लेयर्स पर बहस करना चाहते हैं, तो अन्य सभी जवाबों में शायद एक ही समस्या है
जैसन

1
यकीन नहीं है कि अगर Win32 सिर्फ परिभाषित है, लेकिन गैर-शून्य में परिभाषित किया गया है। यदि यह बाद का मामला है, तो आप बस कह सकते हैं #if WIN32। गैर-विंडोज़ पर, चूंकि WIN32 परिभाषित नहीं है, इसलिए प्रीप्रोसेसर को इसे 0. के रूप में व्यवहार करना आवश्यक है
शाहबाज

27

PHP, 22 बाइट्स

`<?=PATH_SEPARATOR>":";`  

प्रिंट 1यदि पथ विभाजक अर्धविराम (डीओएस और ओएस / 2 को छोड़कर अन्य सभी ओएस के लिए कोलन या खाली है), और कुछ नहीं।

22 बाइट्स भी , लेकिन यह सुरक्षित नहीं:

<?=strpos(__FILE__,92);

यदि फ़ाइल पथ में बैकस्लैश है, तो एक धनात्मक पूर्णांक प्रिंट करता है; और कुछ नहीं। 27 बाइट्स के
साथ एक सुरक्षित विकल्प : प्रिंट<?=DIRECTORY_SEPARATOR>"/";1 या कुछ भी नहीं।

एक अजीब खोज : <?=__FILE__[1]==":";( 20 बाइट्स ) होना चाहिए, सुरक्षित भी नहीं है, लेकिन ठीक है। लेकिन हालांकि __FILE__एक स्ट्रिंग होने का नाटक करता है (मैंने कोशिश की var_dumpऔरgettype ) , इसे अनुक्रमणित करता है एक त्रुटि फेंकता है, जब तक कि आप इसे कहीं और कॉपी नहीं करते (कंक्रीटिंग भी काम करता है) या इसे फ़ंक्शन पैरामीटर के रूप में उपयोग करें।

संपादित करें:
<?=(__FILE__)[1]==":";( 22 बाइट भी ) PHP 7 में काम करता है; लेकिन इसलिए कि कोष्ठक स्थिरांक मान को एक अस्थायी चर में कॉपी करते हैं।

27 बाइट्स : <?=stripos(PHP_OS,win)===0;
परीक्षण यदि पूर्वनिर्धारित PHP_OSस्थिरांक के साथ शुरू होता है win(केस असंवेदनशील; विंडोज, Win32, WINNT, लेकिन CYGWIN या डार्विन नहीं); 1विंडोज के लिए प्रिंट , और कुछ नहीं।

17/18 बाइट्स :

<?=strlen("
")-1;

प्रिंट 1यह विंडोज LINEBREAK साथ जमा हो गया था, तो (भी डॉस पर, ओएस / 2 और अटारी TOS - हालांकि मुझे लगता है कि TOS के लिए क्या कभी किसी ने संकलित पीएचपी शक) और,0

आप स्थिरांक भी देख सकते हैं PHP_EOL

अधिक विकल्प:

PHP_SHLIB_SUFFIXहै dllविंडोज पर, लेकिन जरूरी नहीं कि केवल वहाँ नहीं।
php_uname()ऑपरेटिंग सिस्टम और अधिक पर जानकारी देता है; Windowsविंडोज के साथ शुरू होता है । जब विंडोज पर एक ब्राउज़र में बुलाया
$_SERVER['HTTP_USER_AGENT']जाएगा Windows
<?=defined(PHP_WINDOWS_VERSION_BUILD);(38 बाइट्स) PHP> = 5.3 में काम करता है

निष्कर्ष

यह बताने का एकमात्र विफल तरीका है कि क्या यह वास्तव में विंडोज है, ऐसा कुछ भी नहीं दिख रहा है, यह ओएस नाम पर एक चेक लगता है। PHP के लिए: php_os()सुरक्षा कारणों से अक्षम किया जा सकता है; लेकिन PHP_OSसंभवतः हमेशा वांछित जानकारी होगी।


4
* Nix पर फ़ाइल नाम में बैकस्लैश हो सकते हैं, इसलिए यह वास्तव में मूर्ख नहीं है। नियम यह नहीं कहते हैं कि यह मूर्खतापूर्ण है, हालांकि, इसलिए ツ \ _ (_) _ / ¯
जॉर्डन

@ जोर्डन: आप सही हैं। मैंने उस जानकारी को विवरण में जोड़ दिया। धन्यवाद।
टाइटस

4
एक विकल्प <?=class_exists(COM);:। कक्षा COMकेवल विंडोज के तहत उपलब्ध है, जहां तक ​​मुझे पता है। कि आपको एक बाइट बचाना चाहिए।
इस्माइल मिगुएल

@IsmaelMiguel यह आपके लिए इस तरह के पोस्ट करने के लिए एक अलग जवाब के लिए पर्याप्त है। (हालांकि, यह ऐसा करने के लिए इसके लायक नहीं हो सकता है; यह उत्तर बहुत अच्छी तरह से लिखा गया है।)
wizzwizz4

1
@ wizzwizz4 यह इसके लायक नहीं है। जवाब गुमनामी को धक्का होगा। इसलिए मैंने केवल अपना उत्तर लिखने के बजाय टिप्पणी छोड़ दी।
इस्माइल मिगुएल

16

Befunge-98, 7 बाइट्स

6y2%!.@

इसे ऑनलाइन आज़माएं!

यह सिस्टम पथ विभाजक को क्वेरी करके काम करता है, जो \विंडोज /पर और अन्य ऑपरेटिंग सिस्टम पर है।

6y            System information query: #6 returns the path separator.
  2%          Test the low bit - this will be 1 for '/' and 0 for '\'.
    !         Not the value, so it becomes 0 for '/' and 1 for '\'.   
     .@       Output the result and exit.

15

गणितज्ञ, 28 बाइट्स

$OperatingSystem=="Windows"&

इसे एक समारोह बनाने की क्या बात है? आप एम्परसैंड को एक बाइट की बचत कर सकते हैं, और कोड बस सीधे मूल्यांकन करेगा कि क्या इसे निष्पादित किया गया है विंडोज-ईश प्रणाली पर।
रुस्लान

@Ruslan सभी उत्तर या तो पूर्ण प्रोग्राम होने चाहिए जो परिणाम या कॉल करने योग्य फ़ंक्शन को प्रिंट करें। यदि इसे एक गणितज्ञ नोटबुक उत्तर घोषित किया जाता है, तो आप इसे पूरा कार्यक्रम कहकर दूर कर सकते हैं, लेकिन अगर मैं कमांड-लाइन से बात को बिना बुलाए &, यह कुछ भी प्रिंट नहीं करेगा (और यह तब भी कॉल करने योग्य कार्य नहीं है , लेकिन केवल एक स्निपेट / अभिव्यक्ति)।
मार्टिन एंडर

@MartinEnder वास्तव में कोई आउटपुट नहीं? मुझे Out[1]= Falseइस से आउटपुट मिलता है :~/opt/Mathematica/11.0/Executables/math <<< '$OperatingSystem=="Windows"'
रुस्लान

@ रूसन मेरा मानना ​​है कि एक नोटबुक वातावरण भी शुरू होता है (सिर्फ एक कमांड-लाइन आधारित)। कमांड-लाइन से प्रोग्राम चलाने से मेरा मतलब स्क्रिप्ट मोड का उपयोग करना है।
मार्टिन एंडर 20

13

जावा 8, 33 बाइट्स

सुझाव के लिए ओलिवियर separatorCharग्रेजायर के लिए विशेष धन्यवाद , और -1 बाइट के लिए कृति लिथोस!

यह एक लंबोदर अभिव्यक्ति है जो एक बूलियन देता है। इसे सौंपा जा सकता है Supplier<Boolean> f = ...;और इसके साथ बुलाया जा सकता है f.get()

()->java.io.File.separatorChar>90

इसे ऑनलाइन आज़माएं! - सर्वर विंडोज़ नहीं है, इसलिए यह प्रिंट करता हैfalse। हालाँकि, मेरी विंडोज़ मशीन में, समान कोड प्रिंट होता हैtrue

यह कोड क्या करता है इसे सिस्टम की फाइल सेपरेटर मिलता है, और जांचें कि क्या इसका कोडपॉइंट चरित्र से बड़ा है [ । विंडोज के लिए यह सच है, क्योंकि यह \सेपरेटर के रूप में उपयोग करता है - लेकिन हर दूसरे ओएस का उपयोग करता है /, जिसमें एएससीआईआई तालिका में एक कम कोड होता है।


क्या यह दूसरे OS पर नहीं टूटेगा जो W से शुरू होता है?
डाउनगेट

()->java.io.File.separatorChar=='\\'केवल 36 बाइट्स है।
ओलिवियर ग्रेगोइरे

1
@ OlivierGrégoire अच्छा एक - और मैं इसे 34 का उपयोग करके गोल्फ कर सकता हूं ()->java.io.File.separatorChar>'['!
FlipTack

2
@ टिट्स वेबोस, व्होनेक्स। शायद और भी ज्यादा।
ओलिवियर ग्रेजेइरे

3
@ टाइटस रुको, WAITS के बारे में क्या ?
NoOneIsHere

11

जे, 7 बाइट्स

6=9!:12

यह एक क्रिया (एक फ़ंक्शन के समान) है जो 9!:12सिस्टम प्रकार को प्राप्त करने के लिए अंतर्निहित विदेशी संयोजन का उपयोग करता है जहां 5 यूनिक्स है और 6 विंडोज 32 है।


J आधिकारिक दस्तावेज यह दिखाता है कि पुराने विंडोज के लिए यह मान लौटाता है। "6 विंडोज 32 (95/98/2000 / NT)" क्या प्रलेखन को अद्यतन करने की आवश्यकता है? 64 बिट विंडोज होने पर क्या होता है? jsoftware.com/help/dEDIA/dx009.htm
कीता

64 बिट विंडोज 7 पर परीक्षण किया गया और यह एक 6. लौटाता है। प्रलेखन काफी पुराना प्रतीत होता है।
कीता

@ केटा हां मुझे लगता है कि यह पुराना है, लेकिन यह अभी भी विंडोज 10 64 बिट पर मेरे लिए एक 6 लौटा है।
मील

11

आर, 15 बाइट्स

.Platform$O>"v"

प्लाननैपस के लिए धन्यवादसूची तत्व निष्कर्षण के लिए आंशिक मिलान का उपयोग करने के सुझाव ।

.Platform एक सूची है जिसके प्लेटफॉर्म के कुछ विवरण आर के तहत बनाए गए थे। एक तत्व है OS.type("ओ" से शुरू होने वाले नाम का एकमात्र तत्व) जो चरित्र स्ट्रिंग है, जो कंप्यूटर का ऑपरेटिंग सिस्टम (परिवार) देता है। "unix"या में से एक "windows"

तो "unix"फिर कम है "v", लेकिन "windows"तब अधिक है "v"। अन्य मान्य 15 बाइट्स उत्तर हैं

.Platform$O>"V"
.Platform$O>"w"
.Platform$O>"W"

R को यूनिक्स जैसे, विंडोज और मैक ऑपरेटिंग सिस्टम के परिवारों के लिए विकसित किया जा रहा है । अन्य OS परिवार समर्थित नहीं हैं।


1
यूनिक्स के अलावा अन्य प्लेटफ़ॉर्म हैं जिन्हें आप नहीं जानते ...
Blue

2
@muddyfish: .Platform [[1]] को आर प्रलेखन में "यूनिक्स" या "विंडो" के रूप में परिभाषित किया गया है। github.com/wch/r-source/blob/…
liori

क्षमा करें, यह ठीक है। उत्तर को संभवतः इस तथ्य को शामिल करने के लिए संशोधित किया जाना चाहिए ताकि फिर से पूछा जा सके
ब्लू

10

पर्ल, 11 बाइट्स

print$^O=~MS

^O एक शाब्दिक नियंत्रण-ओ द्वारा प्रतिस्थापित किया जाना चाहिए।

1विंडोज़ पर आउटपुट , दूसरे ओएस पर कुछ भी नहीं।

ध्यान दें कि मैं उपयोग नहीं कर रहा हूं sayक्योंकि यह एक अनुगामी न्यूलाइन जोड़ता है, जो पर्ल में सत्य है।

प्राइमो को -2 बाइट्स धन्यवाद। (और निर्धारित संभावित मुद्दे)
-1 बाइट्स ais523 के लिए धन्यवाद।


AFAIR यह Cygwin Perl में काम नहीं करेगा।
इगोर स्कोकिंसकी

यह या तो पर्ल पर्ल में काम नहीं करेगा। पर्ल उन दोनों को विंडोज से अलग ऑपरेटिंग सिस्टम के रूप में मानता है, हालांकि (जैसा कि वे आमतौर पर विंडोज सम्मेलनों के बजाय UNIX का पालन करते हैं), और यह स्पष्ट नहीं है कि उन्हें सवाल के उद्देश्य के लिए गणना करनी चाहिए या नहीं। अन्य समाचारों में, आप इसके बजाय एक शाब्दिक नियंत्रण-ओ चरित्र का उपयोग करके यहां एक बाइट बचा सकते हैं ^O

@ ais523 मैंने संपादित किया, धन्यवाद। साइगविन और मिंगव के लिए, मैं पोस्ट को हटा दूंगा यदि उन्हें विंडोज के रूप में माना जाना चाहिए, लेकिन जैसा कि आप कहते हैं, उन्हें अलग-अलग ओएस (या कम से कम, जैसे कि विंडोज़ ओएस) पर विचार करना अधिक समझ में आता है।
दादा

Regex delimiters आवश्यक नहीं होना चाहिए $^O=~W, हालांकि, मैं शायद खिलाफ मैच करूंगा MS। वैकल्पिक रूप से, आप मिलान भी कर सकते हैं $^X=~':'
प्रिमो

@primo सही, धन्यवाद। मुझे इसमें कोई अन्य OS नहीं पता Wहै, इसलिए मैंने Wठीक के लिए जाँच की .. किसी भी कारण से आप MSइसके बजाय सुझाव देते हैं?
दादा

9

जूलिया, 10 बाइट्स

is_windows

एक फ़ंक्शन जो विंडोज़ के लिए सही है


9

x86 मशीन कोड, 9 बाइट्स

40 39 04 24 75 02 CD 80 C3

से संकलित:

inc eax        ; set eax to 1
cmp [esp], eax ; check if [esp] == 1 (linux)
jne windows    ; jump over "int 0x80" if on windows
int 0x80       ; exit with exit code 0 (ebx)
windows:
ret            ; exit with exit code 1 (eax)

3
शुद्ध बाइनरी (COM) विंडोज या लिनक्स पर नहीं चलेगा, तो यह सुनिश्चित न करें कि यह वैध है
इगोर स्कोकिंसकी

@IgorSkochinsky विधानसभा के लिए एक दुभाषिया होना चाहिए।
शमूएल एच।

आप केवल inc eaxऔर केवल छोड़कर कोड को छोटा बना सकते हैं int 0x80, मुझे लगता है कि इसे विंडोज़ पर विफल होना चाहिए और प्रक्रिया को समाप्त करना चाहिए।
शमूएल एच।

2
@IgorSkochinsky ऐसे प्रोग्राम हैं जो कच्चे बाइनरी भी चलाते हैं। मेरी पिछली टिप्पणी में लिंक देखें।
शमूएल एच।

1
Bochs और QEMU नंगे धातु के वातावरण का अनुकरण करते हैं और मेजबान OS के तहत बाइनरी कोड नहीं चलाते हैं। इसलिए वे IMO काम नहीं करेंगे। लेकिन यह सब मेटा के लिए एक चर्चा हो सकती है।
इगोर स्कोकिंस्की

8

जावास्क्रिप्ट, 42 30 26 25 बाइट्स

console.log((
//Begin
_=>navigator.oscpu[0]>'V'
//End
)())

फ़ायरफ़ॉक्स के साथ परीक्षण किया गया। (क्रोम के पास oscpuसंपत्ति नहीं है ।) चूंकि लोअरकेस अक्षरों में अपरकेस अक्षरों की तुलना में एक उच्च वर्ण कोड होता है, यह अपरकेस के पहले अक्षर पर निर्भर करता है navigator.oscpuऔर फ़ायरफ़ॉक्स का समर्थन करने वाले किसी भी प्लेटफ़ॉर्म पर W , X , Y या Z नहीं है (इसके अलावा अन्य) विंडोज, निश्चित रूप से)। इस पोस्ट के अनुसार , यह मामला है।

संपादित करता

  1. नील की बदौलत 12 बाइट्स बचाए
  2. एक और चार बाइट्स बचाए
  3. ब्लेंडर की बदौलत एक और बाइट बचा ।

oscpuशायद सबसे छोटी navigatorसंपत्ति है जिसका आप उपयोग कर सकते हैं। इसके अलावा, एक regexp का परीक्षण संभवतः कम काम करेगा, लेकिन मैंने इसे मापा नहीं है।
नील

3 बाइट्स को बचाने, आप वसा तीर के ठीक बाद हटा सकते हैं !=-1और जोड़ सकते हैं ~
ल्यूक

क्या आपको एक फंक्शन बनाना है? क्या आप सिर्फ console.logरेगेक्स टेस्ट नहीं कर सकते ? यह भी navigator.oscpu[0]=='W'काम करेगा या वहाँ एक और ओएस है जो W से भी शुरू होता है

2
हम्म, किसी कारण से मेरे क्रोम में ऑस्पू नहीं है।
मुजेर 9:17

2
navigator.oscpu>'V'साथ ही काम कर सकते हैं
ब्लेंडर

8

सी #, 61 48 बाइट्स

()=>(int)System.Environment.OSVersion.Platform<4

TheLethalCoder के लिए धन्यवाद, 13 बाइट्स सहेजे गए

या 83 बाइट्स पर एक पूरा कार्यक्रम:

class P{static int Main(){return(int)System.Environment.OSVersion.Platform<4?1:0;}}

विभिन्न Windows संस्करण Microsoft .NET कार्यान्वयन में 0 से 3 मान का उपयोग करते हैं । 4 यूनिक्स है, 5 एक्सबॉक्स [360] (जिसे मैं "विंडोज" नहीं मानूंगा), 6 मैकओएसएक्स है। मोनो पूर्व के संस्करणों में यूनिक्स / लिनक्स के लिए 128 जोड़ते हुए समान मूल्यों का उपयोग करता है

इसलिए, कुछ भी <4 विंडोज है, और बाकी सब विंडोज नहीं है।


2
निश्चित नहीं कि अगर मुझे कुछ याद आ रहा है, लेकिन आप मूल्य को ए के लिए क्यों डाल रहे हैं int?
अनु

@ गौमन CS0019 Operator '<' cannot be applied to operands of type 'PlatformID' and 'int'- मूल रूप से, C # टाइपिंग नियम कहता है कि मैं तुलना नहीं कर सकताPlatformIDint सीधे और सीधे , और इसमें से कोई निहित कास्ट नहीं PlatformIDहै int। लेकिन वहाँ है एक स्पष्ट उनके मूल्यों के लिए सभी enums, जिसे मैंने यहां का लाभ लेने से डाली ...
बॉब

1
@ MustafaAKTA Must इसके अलावा, मुझे यह बताना होगा कि यह C # /। NET फ्रेमवर्क / .NET कोर को लक्षित कर रहा है। Xbox One पर केवल UWP ऐप्स चलाना संभव है, जो एक अलग API का उपयोग करते हैं सहित नहीं System.Environment.OSVersionसब पर । यदि आप इसके साथ समस्या लेने जा रहे हैं, तो आपको हर दूसरे गैर-यूडब्ल्यूपी उत्तर को भी हटा देना चाहिए। यह भी पता चलता है कि आप (वर्तमान में) गैर-विंडोज प्लेटफार्मों पर यूडब्ल्यूपी ऐप नहीं चला सकते हैं, इसलिए आप उन सभी को भी हटा सकते हैं। जो आपको 0 उत्तर और एक अचूक प्रश्न के साथ छोड़ देता है।
बॉब

1
आप Action<bool>48 बाइट्स के लिए पहले उदाहरण में संकलन कर सकते हैं (मैंने इसे परीक्षण नहीं किया है, लेकिन विश्वास है कि यह काम करेगा) _=>(int)System.Environment.OSVersion.Platform<4;यह होना आवश्यक है()=>... 49 बाइट्स के
TheLethalCoder

1
अनाम कार्यों जैसे कि Funcs और Actions का संकलन हर समय यहाँ किया जाता है। मेरा मानना ​​है कि यह गोल्‍फिंग टिप्‍स पेज में है और मैं लगभग हर समय इनका उपयोग करता हूं। अन्य भाषाओं में भी अनाम फ़ंक्शंस का उपयोग किया जाता है, इसलिए मुझे लगता है कि यहां उनका उपयोग करना सुरक्षित है
TheLethalCoder

7

बैच, 50 बाइट्स

@if %OS%==Windows_NT if not exist Z:\bin\sh echo 1

संपादित करें: यह विंडोज है, यह दावा करने के बजाय डॉस को नजरअंदाज करने में सक्षम है।

केवल अन्य तरह से मैं विंडोज के बाहर बैच चल रहा है के बारे में पता WINE जो डिफ़ॉल्ट रूप से मैप कर देंगे उपयोग करने के लिए है Z:करने के लिए /। इसलिए यदि Z:\bin\shमौजूद है, तो संभावना है कि यह /bin/shएमएस विंडोज नहीं है।

मुझे नहीं पता कि WINE% OS% को क्या सेट करता है, लेकिन अगर यह नहीं है Windows_NT तो मैं 23 बाइट्स बचा सकता हूं।


1
दूसरा तरीका DOS है, जो विंडोज नहीं है।
रुस्लान

न केवल यह डॉस के तहत विफल होता है, बल्कि एक कंप्यूटर पर भी जहां Z: मैप किया जाता है, और ऐसा पथ समाहित करने के लिए होता है।
आदम

1
कम से कम मैं वाइन का पता लगाने की कोशिश कर रहा हूं । WINE के तहत चलाने पर कोई भी अन्य उत्तर सही परिणाम नहीं देगा।
नील

3
@ Adám Sure और अगर आप C उत्तर को -DWIN32 = 1 के साथ संकलित करते हैं तो यह भी विफल हो जाता है। तुम्हारी बात?
नील

1
हां, शराब सेटOS=Windows_NT
जेसन

7

QBasic, 31 बाइट्स

?INSTR(ENVIRON$("COMSPEC"),"W")

विंडोज के तहत गैर-शून्य प्रिंट करता है, 0 सब कुछ के तहत।

COMSPECMicrosoft OSs के लिए अद्वितीय एक पर्यावरण चर है। यह आमतौर पर कमांड दुभाषिया की ओर इशारा करता हैcommand.com याcmd.exe । विंडोज के तहत, कमांड दुभाषिया विंडोज निर्देशिका में कहीं बैठता है; MS-DOS के तहत, यह DOS डायरेक्टरी या डिस्क के रूट पर बैठता है, और किसी अन्य OS के तहत, इसका कोई अस्तित्व नहीं है।

यह देखने के लिए कि क्या COMSPEC"W" में मान शामिल है, हम विंडोज और विंडोज के बीच अंतर बता सकते हैं।


COMSPECविशेष रूप से लिनक्स के तहत कुछ भी मतलब रखने के लिए आरक्षित नहीं है (इसका अर्थ है कि यह डिफ़ॉल्ट रूप से उपयोगकर्ता नियंत्रण में है), इसलिए क्या यह संभव नहीं है कि उपयोगकर्ता इसे अपने स्वयं के उद्देश्यों के लिए उपयोग कर रहे हैं (और ऐसा करने के लिए होता है) W)? बेशक, यह एक किनारे का मामला है।

1
@ ais523: इसके अलावा, विंडोज निर्देशिका में डब्ल्यू को शामिल करने की आवश्यकता नहीं है। यह किसी भी मामले में भंगुर है।
जॉय

7

नोड.जेएस, 27 16 15 13 बाइट्स

@Patrick के लिए धन्यवाद , जिन्होंने नोड के REPL का उपयोग करके मेरे समाधान से 12 बाइट का मुंडन किया:

_=>os.EOL>`
`

मूल समाधान:

_=>require('path').sep!='/'

आप इस के लिए परिवर्तित करते हैं Node.js REPL, तो आप सिर्फ का उपयोग करके 16 बाइट्स बचा सकता है_=>path.sep!='/'
पैट्रिक रॉबर्ट्स

मैं कोडगोल्फ के लिए नया हूं। क्या मैंने ऐसा करने की अनुमति दी है?
गिलजेड

हां, अन्यथा मैंने इसका सुझाव नहीं दिया होता। REPL का अर्थ है, पढ़ने, निष्पादित करने, प्रिंट लूप, वह प्रोग्राम जो nodeकंसोल पर प्रवेश करते समय चलता है। वहां से, सभी सिस्टम नोड मॉड्यूल उनकी आवश्यकता के बिना उपलब्ध require()हैं।
पैट्रिक रॉबर्ट्स

अरे हाँ सॉरी। मेरा मतलब था 11. आप एक और बाइट को बदल !=सकते हैं >क्योंकि ASCII सूचकांक \ 92 है और /47 है।
पैट्रिक रॉबर्ट्स

7

एक्सेल VBA, 41 40 30 29 26 24 बाइट्स

तत्काल विंडोज़ फ़ंक्शन जो कि रिटर्न करता है trueयदि सिस्टम का ओएस कोड शुरू होता है, तो लंबाई 3 से अधिक है, क्योंकि जानकारी आउटपुट के लिए प्रतिबंधित है macया केवल विंडोज़ पीसी पर pcdosयह रिटर्नtrue

?[Len(Info("SYSTEM"))>3]

पिछला संस्करण

''# Ignore the second `"` that follows every `\` - its only there for highlighting 

?Left(Environ("OS"),1)="W"                 # 24 Bytes

?InStr(ThisWorkbook.Path,"\"")             # 29 Bytes

?Mid(ThisWorkbook.Path,3,1)="\""           # 30 Bytes, Restricted to local Files

?Application.PathSeparator="\""            # 30 Bytes

?Left(Application.OperatingSystem,1)="W"   # 40 Bytes

परिवर्तन

प्रयोग करने के लिए नील -1 धन्यवाद Left(...,1)से अधिकMid(...,1,1)

-10 मेघ की पाथ सेपरेटर ट्रिक बताने के लिए क्रिस को धन्यवाद

-1 के लिए जाँच के WorkbookPathलिए"\" का उपयोग बजाय केApplication.Path Separator

-4 स्विच करने के लिए Environ()

-2 स्विच करने के लिए [Len(Info(...

उपन्यास समाधान, 51 बाइट्स

नोबल subरूटीन, जो VBE को आउटपुट करता है, सशर्त संकलन की विधि द्वारा विंडो, एक 1 (truthy)अंडर विंडो और 0 (falsey)मैक के अंतर्गत आता है।

Sub a
i=1
#If Mac Then
i=0
#End If
Debug.?i
End Sub

1
leftआपको एक बाइट बचाता है।
नील

क्या आपने इसे ऑनलाइन Office365 पर आज़माया है? क्या यह भी VBA का समर्थन करता है? बस उत्सुक।
क्रिस एच

@ChrisH मेरे ज्ञान का कार्यालय.कॉम ऑनलाइन वीबीए स्क्रिप्टिंग का समर्थन नहीं करता है (हालांकि अगर कोई और बेहतर जानता है तो कृपया मुझे बताएं, इससे मेरा जीवन काफी आसान हो जाएगा); हालाँकि, O365 के साथ आपको अपने डेस्कटॉप पर Office 2016 (या जो कुछ भी वर्तमान है) की एक प्रति डाउनलोड करने का अधिकार है, और यह VBA स्क्रिप्टिंग का समर्थन करता है।
टेलर स्कॉट

मैंने अब तक इससे बचने का प्रबंधन किया है; आपकी टिप्पणी दी गई है जो जारी रखने के लिए सेट है (मेरे द्वारा उपयोग की जाने वाली केवल विंडोज़ मशीन में कार्यालय की एक डेस्कटॉप कॉपी है, व्यक्तिगत मशीनें सभी लिनक्स हैं)
क्रिस एच

1
@ मेगो की राह सेपरेटर ट्रिक ( ?Application.PathSeparator)="\"32 की होगी क्योंकि यह एक सिंगल चार्ज है)
क्रिस एच

6

पर्ल 6 ,  19  18 बाइट्स

put $*DISTRO.is-win
put ?($*CWD~~/\\/)

आउटपुट True␤या False␤सिस्टम के आधार पर इसे चलाया जाता है।


दूसरा व्यक्ति सीडब्ल्यूडी के गैर-विंडोज़ मूल्यों पर निर्भर करता है जिसमें कोई `` नहीं है - इसकी कोई गारंटी नहीं है,
जैसन

5

एपीएल (डायलॉग) , 21 बाइट्स

'W'∊∊#⎕WG'APLVersion'

इसे ऑनलाइन आज़माएं!

#⎕WG'APLVersion' रूट ( # ) डब्ल्यू इंडो जी एट प्रॉपर्टी एपीएल वर्जन

 सूची (समतल)

'W'∊ है डब्ल्यू से सदस्य हैं? (कोई गैर-विंडोज रिटर्न मान एक पूंजी डब्ल्यू में शामिल नहीं है)



4

PHP 17 बाइट्स

निम्न आउटपुट 1 होगा यदि विंडोज़ और कुछ नहीं तो कुछ भी नहीं। स्ट्रिंग कनवर्जन के नोटिस को नजरअंदाज करना।

<?=PHP_OS==WINNT;

लाइनक्स के लिए ऑनलाइन परीक्षण का प्रयास करें क्योंकि सैंडबॉक्स पीओसी के लिए लिनक्स है।


इतना ज़रूर है? संभावित मूल्यों के लिए पूछ रहा है : PHP_OS
मैनटवर्क

1
'<? = PHP_OS [0] == डब्ल्यू; `दोनों 1 बाइट से छोटा है और मैनेटवर्क से जुड़े प्रश्न में अन्य सभी विंडोज़ वैल्यू को पकड़ता है। >Vकाम भी हो सकता है।
user59178

मैनटवर्क इस बात पर निर्भर करता है कि विंडोज़ वीज़ा 7 के बाद से विंडोज़ वर्ज़न PHP किस पर संकलित किया गया था, एनटी अथॉरिटी कर्नेल की वजह से विंडोज़ वर्ज़न को WinNT के साथ दर्शाया गया है। Windows XP से पहले और नीचे WIN32 और विंडोज सर्वर 2003 विंडोज था।
DrWhat

4

जावा 8, 49 बाइट्स

()->System.getenv().get("OS").contains("Windows")

अन्य जावा उत्तर की तुलना में लंबा है , लेकिन एक अलग दृष्टिकोण लेता है।

यह लैम्ब्डा फिट बैठता है Supplier<Boolean>और निम्नलिखित कार्यक्रम के साथ इसका परीक्षण किया जा सकता है:

public class DetectMSWindows {

  public static void main(String[] args) {
    System.out.println(f(() -> System.getenv().get("OS").contains("Windows")));
  }

  private static boolean f(java.util.function.Supplier<Boolean> s) {
    return s.get();
  }

}

यह बहुत, प्रारंभिक उत्तर के समान है जिसे आप लिंक करते हैं (संपादन से पहले)।
ओलिवियर ग्राएगोइरे

सिर्फ क्यों नहीं .contains("W")?
साइओस

@ वास्तव में, चर ओएस विंडोज-विशिष्ट प्रतीत होता है।

4

हास्केल, 39 31 बाइट्स

import System.Info
f=os!!0=='m'

मैं "एम" के पहले अक्षर आउटपुट की जांच करता हूं, जो खिड़कियों के लिए "मिंगव" होना चाहिए। जहां तक ​​मैं बता सकता हूं, कोई अन्य ओएस नहीं है जो एम से शुरू होता है। जानकारी https://github.com/ghc/ghc/blob/master/compiler/utils/Platform.hs से आती है


1
मेरे सिस्टम पर (विंडोज 10 64-बिट, जीएचसी 8.0.1 64-बिट), osदेता है "mingw32"
मेगो

@ जो आप सही हैं, उसके लिए सही है
डायलन मीस

4

बैश + कोरुटिल्स, 5 बाइट्स

rm $0

अधिकांश अन्य पोसिसी गोले में भी काम करता है। (ध्यान दें कि Windows पोर्ट मौजूद हैं bashऔर rmमौजूद हैं; भले ही वे आमतौर पर केवल अधिक भारी POSIXy ऑपरेटिंग सिस्टम के साथ उपयोग किए जाते हैं, यह पूरी तरह से रिक्त प्रविष्टि नहीं है।) एक्जिट कोड (0 = false, 1 = true) के माध्यम से आउटपुट। यदि आपको फ़ाइल नाम मानने की अनुमति है, तो 4 बाइट्स के रूप में गिना जा सकता है rm a। ध्यान दें कि यह बहुत ही अजीब फ़ाइलनामों के मामले में संभावित रूप से विफल हो सकता है (जो rmउद्धृत करने की कमी के कारण तर्कों के रूप में व्याख्या करेगा, और संभवतः उन फ़ाइलों को हटा दें जिनकी आप परवाह करते हैं, इसलिए मैं इस कार्यक्रम को एक अजीब नाम वाली फ़ाइल से चलाने के खिलाफ सलाह दूंगा। )।

नोट: प्रोग्राम को साइड इफेक्ट के रूप में डिस्क से हटाता है, या कम से कम करने की कोशिश करता है। उस स्थिति में जहां हम विंडोज पर चल रहे हैं, ओएस चल रही फ़ाइल (एक ऑपरेशन जिसे विंडोज़ डिफ़ॉल्ट या पूर्ण विराम द्वारा या तो बंद कर देता है) को हटाने में विफल हो जाएगा, और इस तरह rmसे गलती हो जाएगी। bashत्रुटि को पकड़ता है और इसे एक एक्जिट कोड में परिवर्तित करता है (इस प्रकार प्रोग्राम पूरी तरह से सामान्य रूप से समाप्त हो जाता है)। एक्ज़िट कोड्स में सचाई के लिए यहाँ अन्य प्रविष्टियों में से अधिकांश का उपयोग 0 और 1 के लिए किया जा रहा है, इसलिए यह वही करता है; ध्यान दें कि bashके ifबयान बिल्कुल पूर्णांक (बल्कि, यह स्वीकार करता है स्वीकार नहीं करता आदेशों और शाखाओं वे सफलतापूर्वक चला है कि क्या के आधार पर, और गणित परीक्षण जैसे कार्यक्रमों के साधनों के माध्यम से किया जाता हैtestवह जानबूझकर एक "क्रैश" की तुलना एक असफल तुलना पर करता है), इसलिए यह उन कार्यक्रमों की तुलना में वैधता के मामले में शकीर जमीन पर है जो उन भाषाओं में निकास कोड के माध्यम से आउटपुट करते हैं जहां 0 एक में मान्य हैifस्टेटमेंट टेस्ट और कार्यक्रम को elseशाखा को भेजता है ।


4

8 वें , 11 बाइट्स

 
os 1- not .
 

trueविंडोज falseपर लिनक्स और मैकओएस पर प्रिंट । 8 वें द्वारा समर्थित अन्य प्लेटफ़ॉर्म एंड्रॉइड, आईओएस और रास्पबेरी पाई हैं, लेकिन मैं उन पर परीक्षण करने में सक्षम नहीं हूं।

Ungolfed संस्करण (टिप्पणियों के साथ)

 
G:os  \ Return a number n indicating the operating system 
      \ 0 for Linux
      \ 1 for Windows 
      \ 2 for macOS
      \ 3 for Android 
      \ 4 for iOS 
      \ 5 for Raspberry Pi
n:1-  \ Subtract 1
G:not \ If Windows --> true, otherwise --> false
.     \ Print result
 

4

पायथन 3 (13 बाइट्स)

import winreg

निकास कोड शून्य (आमतौर पर गोले में सच है) के साथ रिटर्न यदि खिड़कियों पर, और अन्यथा गैर-शून्य निकास कोड के साथ।

यदि आप इसे दूसरे तरीके से पसंद करते हैं, तो 12 बाइट्स समाधान है import posix:।


मुझे लगता है कि यह काम नहीं करेगा यदि एक winreg.pyही निर्देशिका में एक फ़ाइल कहा जाता है।
16

1
इसके अलावा, नियमों के अनुसार: "कोड जो किसी प्लेटफ़ॉर्म पर चलने / संकलित करने में विफल रहता है, वह एक गलत मूल्य के रूप में नहीं गिना जाता है।"
जकार्इ

4

ट्रम्पस्क्रिप्ट , 17 बाइट्स

America is great.

इसे ऑनलाइन आज़माएं!


यह कार्यक्रम, यदि विंडोज़ पर चलाया जाता है, तो प्रिंट होगा:

The big problem this country has is being PC

यह एक सत्य मूल्य माना जाता है।


खाली आउटपुट और निम्न मान गलत हैं:

Boycott all Apple products  until such time as Apple gives cellphone info to authorities regarding radical Islamic terrorist couple from Cal

खाली आउटपुट किसी भी लिनक्स सिस्टम (इस कार्यक्रम के लिए) पर होगा, लंबे सेब प्रतिक्रिया स्पष्ट रूप से मैक (किसी भी कार्यक्रम के लिए) पर होती है। TIO पर, बैकएंड (मैं मान रहा हूं) एक यूनिक्स ऑपरेटिंग सिस्टम है, इसलिए आप केवल मिथ्या मूल्य प्राप्त कर सकते हैं; अपने कंप्यूटर पर मुझे पीसी संदेश मिलता है।


यदि यह त्रुटि संदेश (जो उत्तर को अमान्य कर देगा) के रूप में गिना जाता है, तो 100% निश्चित नहीं है, लेकिन अगर आपको इस बारे में पता नहीं था तो शायद यह आपके लिए हंसी के लायक था।


दुनिया को क्या हो गया है...
ओरानोसोइ

@avaragecoder कीटों के विशाल कीट को पैदा करता है!
मैजिक ऑक्टोपस Urn
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.