ऐसा प्रतीत होता है कि आप जिस चरित्र का उपयोग कर रहे हैं वह वास्तव में वास्तविक ऋण चिन्ह (एक हाइफ़न) की तुलना में अधिक लंबा है।
-
शीर्ष वह है जो आप उपयोग कर रहे हैं, नीचे वह है जो माइनस साइन होना चाहिए। आपको लगता है कि पहले से ही पता है, तो अब देखते हैं कि जावास्क्रिप्ट ऐसा क्यों करता है।
आप जिस चरित्र का उपयोग करते हैं, वह वास्तव में ओगैम स्पेस मार्क है, जो एक व्हाट्सएप चरित्र है, इसलिए इसे मूल रूप से अंतरिक्ष के रूप में एक ही चीज़ के रूप में व्याख्या किया जाता है, जिसका अर्थ है कि आपका कथन जैसा दिखता हैalert(2+ 40)
जावास्क्रिप्ट है।
जावास्क्रिप्ट में इस तरह के अन्य वर्ण हैं। आप विकिपीडिया पर पूरी सूची यहाँ देख सकते हैं ।
इस चरित्र के बारे में कुछ दिलचस्प जो मैंने देखा है वह यह है कि Google Chrome (और संभव अन्य ब्राउज़र) पृष्ठ के शीर्ष बार में इसकी व्याख्या करता है।
यह इसके 1680
अंदर एक ब्लॉक है। यह वास्तव में ओगैम अंतरिक्ष चिह्न के लिए यूनिकोड संख्या है। यह ऐसा करने वाली सिर्फ मेरी मशीन प्रतीत होती है, लेकिन यह एक अजीब बात है।
मैंने यह देखने के लिए अन्य भाषाओं में प्रयास करने का निर्णय लिया कि क्या होता है और ये परिणाम हैं जो मुझे मिले।
इसमें काम नहीं आने वाली भाषाएँ:
अजगर 2 और 3
>> 2+ 40
File "<stdin>", line 1
2+ 40
^
SyntaxError: invalid character in identifier
माणिक
>> 2+ 40
NameError: undefined local variable or method ` 40' for main:Object
from (irb):1
from /home/michaelpri/.rbenv/versions/2.2.2/bin/irb:11:in `<main>'
जावा ( main
विधि के अंदर )
>> System.out.println(2+ 40);
Main.java:3: error: illegal character: \5760
System.out.println(2+?40);
^
Main.java:3: error: ';' expected
System.out.println(2+?40);
^
Main.java:3: error: illegal start of expression
System.out.println(2+?40);
^
3 errors
पीएचपी
>> 2+ 40;
Use of undefined constant 40 - assumed ' 40' :1
सी
>> 2+ 40
main.c:1:1: error: expected identifier or '(' before numeric constant
2+ 40
^
main.c:1:1: error: stray '\341' in program
main.c:1:1: error: stray '\232' in program
main.c:1:1: error: stray '\200' in program
exit status 1
जाओ
>> 2+ 40
can't load package: package .:
main.go:1:1: expected 'package', found 'INT' 2
main.go:1:3: illegal character U+1680
exit status 1
पर्ल ५
>> perl -e'2+ 40'
Unrecognized character \xE1; marked by <-- HERE after 2+<-- HERE near column 3 at -e line 1.
भाषाएं जो इसमें काम करती हैं:
योजना
>> (+ 2 40)
=> 42
C #
( Main()
विधि के अंदर )
Console.WriteLine(2+ 40);
Output: 42
पर्ल 6
>> ./perl6 -e'say 2+ 40'
42