Twoje zadanie jest proste. Napisz program, który oczywiście powinien generować błąd na pierwszy rzut oka, zarówno podczas kompilacji, jak i uruchamiania, ale albo nie, albo generuje jakiś inny niepowiązany błąd. To konkurs popularności, więc bądź kreatywny.
popularity-contest
underhanded
Jwosty
źródło
źródło
Odpowiedzi:
C ++
Upewnij się, że skompilowałeś następujący kod w standardowym trybie zgodnym (na przykład dla g ++ użyj flagi -ansi):
Jak to działa:
źródło
Rubin
Zawsze fanem tego.
Nie
NameError
. x jest teraznil
.Oto bardziej przyziemny, który już wcześniej mnie dopadł:
Drukuje „nic do zobaczenia”.
źródło
DO?
Całkiem normalny kod tutaj ...
źródło
JavaScript
Oto jak to działa:
źródło
JavaScript
Kiedy podawałem następujący kod, wiele razy mi mówiono: „To musi być literówka! Jak to działa?” .
Poniższy opis został skopiowany dokładnie z jednego z ostatnich przypadków .
źródło
422
..
notacji, ale całkowicie nieświadomy w odniesieniu do.toString(a freaking argument here?)
notacji: P No cóż, już się zorientowałem :)..
jest częścią mylącą.grzmotnąć
Wyniki
Można się spodziewać, że skrypt nie generuje żadnych błędów, ponieważ kończy działanie po pierwszym poleceniu. Nie ma
Można się spodziewać typowych komunikatów o błędach spowodowanych trwającą bombą widełkową z powodu
for
pętli. Nie ma bomby widelcowej.Możesz spodziewać się, że bash narzeka na brakujące
maybe
polecenie lub całą masę błędów składniowych wif
bloku. Nie będzie.Jedyny komunikat o błędzie, który może wygenerować skrypt, kończy się
2: No such file or directory
.Wyjaśnienie
źródło
Perl
Źródło i wyjaśnienie: https://stackoverflow.com/questions/11695110
źródło
Jawa
Tutaj nie ma przepełnienia stosu; poruszać się.
źródło
CoffeeScript
źródło
VBScript
&
Operator w VBScript jest ciąg konkatenacji, ale to, co na ziemi są&&
i&&&
operatorów? (Pamiętaj, że operator „i” w VBScriptAnd
nie jest&&
.)Ten fragment programu jest legalnym VBScript. Dlaczego? Jaka jest wartość
x
?źródło
Cel C
Nie jest to wielka sprawa, ale zaskoczyło mnie, gdy próbowałem umieścić link w komentarzu:
źródło
//
komentarze.DO#
źródło
do
źródło
main
ponieważmain
zostało umieszczone w segmencie danych, który nie jest wykonywalny. Zabawnie,const int main=195
będzie nie upaść (na x86) (ale będzie produkować śmieci status wyjścia), ponieważ.rodata
domyślnie jest umieszczany w tym samym segmencie,.text
a zatem jest wykonywalny. (const char main[]="1\300\303";
zakończy się sukcesem! (wciąż na x86))Jawa
Prawdopodobnie zbyt oczywiste.
Co?
źródło
varargs
nie są varargs;)\u000d
tego użyłby odniesienia do niezdefiniowanej wartościa
.C ++
Dlaczego?
źródło
NULL
jakonullptr
, a implementacje, które to robią (jeszcze nie wiem, ale ich oczekuję) spowodują oczekiwany błąd segmentacji.Pyton
źródło
print """""""""Python strings don't have to start with the same number of quotes they end with."""""
.JavaScript
Jak to działa:
źródło
NaN
/Inf
podobnie jak zwykłe wartości argebraiczne z dobrze zdefiniowaną matematyką na nich). Nowoczesny sprzęt FP można skonfigurować do pracy w obie strony. Niezależne od języka; wstyd nie wiedzieć.C ++
Mieszanie trygrafów i lambda bez przestrzeni może być dość mylące i zdecydowanie wyglądać błędnie dla osób, które nie są świadome trygrafów:
Jak to działa:
źródło
int main(){(([](){})());}
może również wyglądać ładnie, gdy trygraped ...[](){}
jest funkcją lambda, podobnie jak[](int a){return a+1;}
jedna.([](){})()
wywołuje tę funkcję, zwracając,void
jeśli się nie mylę. Całość(([](){})());
sprowadza się więc do(void);
, co jest stwierdzeniem, że nic nie robi.main
wtedy po prostu zwraca zero, tak jak powinno bezreturn
instrukcji.VBA / VB6
Rozdzielenie pustego łańcucha rozdzielanego przecinkami powinno dać pustą tablicę. Czy powinien być oczywisty podział przez zero błędów, prawda?
źródło
JavaScript
Daje: 5
Natomiast:
Podaje błąd SyntaxError
Jak to działa:
źródło
HTML
Pierwszy post tutaj, nie jestem pewien czy dostaję to czy nie, ale proszę bardzo.
źródło
.html
rozszerzenie, a twój serwer internetowy nie jest skonfigurowany do analizowania.html
plików jako PHP?PHP (40 bajtów)
Oto odpowiedź, którą udzieliłem w tym pytaniu: Program kontroli szaleństwa
Pomysł polegał na stworzeniu kodu, który powodował błędy.
Pierwszy błąd, o którym pomyślimy, to błąd składniowy.
Brak błędów składniowych ...
Innym byłoby to, że klasa / funkcja nie istnieje.
To nie biegnie tak daleko ...
Innym byłoby przekroczenie limitu czasu lub przepełnienie pamięci, ale znowu nie osiąga aż tak daleko ...
Przetestuj kod tutaj: http://writecodeonline.com/php/ (usuń
<?
na początku, aby przetestować).źródło
foreach(e()as&$e);
jest rdzeniem tego rozwiązania.e()
jest po prostu utrzymanie sprawdzania składni i&$e
po tym,as
co powoduje awarię.VBScript
Użytkownicy Visual Basic 6 będą o tym wiedzieć
jest legalne, jak jest
Ale co z
? Okazuje się, że jest to legalne w VBScript, ale nie w VB6. Dlaczego?
źródło
do
Przypomniało mi to błąd, który napotkałem, gdy nauczyłem się C. Niestety, oryginalny wariant nie działa z obecnym GCC, ale ten nadal:
To oczywiście segreguje, ponieważ nie uwzględniamy wskaźnika zerowego, prawda?
To był oryginalny wariant I, którego nie mogę już odtworzyć:
Jest to również oczywiste, jeśli wiesz, jak działają wskaźniki w C, ale może być zaskakujące, jeśli nie:
źródło
Jawa
Dlaczego to działa:
źródło
C ++ 11
Kompiluje i uruchamia się bez żadnych ostrzeżeń z
g++ -pedantic-errors -std=c++11
.źródło
VBScript
Co to robi:
źródło
DO#
Właściwie złapałem się na tym, że mylnie to robię :)
źródło
Jawa
I jak to działa:
I kolejny:
źródło
enum{
zamiastclass{
oszczędzania bajtudo
Ciągi i tablice wc mogą być dość mylące
źródło