เขียน C / C ++ Polyglot
แนวคิดของความท้าทายนี้ค่อนข้างง่าย สิ่งที่คุณต้องทำคือเขียนโปรแกรมที่จะรวบรวมเป็นทั้ง C ที่ถูกต้องและ C ++ ที่ถูกต้อง! มีบางอย่างที่จับได้ โปรแกรมจะต้องทำงานแตกต่างกันเมื่อรวบรวมในแต่ละภาษา โปรแกรมจะต้องมีเอาต์พุตที่แตกต่างกันสำหรับแต่ละภาษาเพื่อที่จะได้รับการพิจารณาว่า "ประพฤติแตกต่างกัน" กฎระเบียบ โปรแกรมจะต้องเป็นทั้ง C และ C ++ ที่ถูกต้อง โปรแกรมจะต้องมีผลลัพธ์ที่แตกต่างกันขึ้นอยู่กับภาษาที่รวบรวมไว้ #ifdef __cplusplusหรือเทคนิค preprocessor "ง่าย" อื่น ๆ จะหมดกำลังใจ! (การดำเนินการตัวประมวลผลล่วงหน้าอื่น ๆ นั้นใช้ได้อย่างสมบูรณ์แบบ) พยายามอย่าทำให้มันดูชัดเจนว่าโปรแกรมทำสิ่งที่แตกต่าง นี่คือการประกวดความนิยมดังนั้นใครก็ตามที่มีทางออกที่น่าสนใจและน่าประหลาดใจมากที่สุดชนะ มีความสุข! ตัวอย่าง: ฉันสร้างโปรแกรมของตัวเองเพื่อดูว่ามันเป็นไปได้ที่จะทำโดยใช้#ifdefเทคนิค: #include <stdio.h> #include <string.h> char *m="C++ rules!"; int t[11]={0,0,0,0,1,-1,-3,9,-8,82,0}; char tr(char c,int i) { return c+((sizeof('!')+1)&1)*t[i]; …