คำถามติดแท็ก compilation

การคอมไพล์คือการแปลงข้อความต้นฉบับเป็นรูปแบบอื่นหรือการเป็นตัวแทน การใช้แท็กนี้โดยทั่วไปมีไว้สำหรับคำถามเกี่ยวกับการแปลงภาษาโปรแกรมเป็นรหัสเครื่อง โดยปกติแท็กนี้จะใช้กับแท็กอื่นที่ระบุประเภทของข้อความต้นฉบับเช่นแท็กภาษาการเขียนโปรแกรม (C, C ++, Go เป็นต้น) และแท็กที่ระบุเครื่องมือหรือคอมไพเลอร์ที่ใช้สำหรับการแปลง (gcc, Visual Studio, ฯลฯ ).

5
ทำไมการเปลี่ยน 0.1f ถึง 0 ทำให้ประสิทธิภาพลดลง 10 เท่า?
ทำไมรหัสนี้ const float x[16] = { 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0, 2.1, 2.2, 2.3, 2.4, 2.5, 2.6}; const float z[16] = {1.123, 1.234, 1.345, 156.467, 1.578, 1.689, 1.790, 1.812, 1.923, 2.034, 2.145, 2.256, 2.367, 2.478, 2.589, 2.690}; float y[16]; for (int i = 0; i …

13
ทำไมการคอมไพล์ C ++ ใช้เวลานานมาก
การรวบรวมไฟล์ C ++ ใช้เวลานานมากเมื่อเทียบกับ C # และ Java การคอมไพล์ไฟล์ C ++ ใช้เวลานานกว่าการรันสคริปต์ Python ขนาดปกติ ขณะนี้ฉันใช้ VC ++ แต่ก็เหมือนกันกับคอมไพเลอร์ใด ๆ ทำไมนี้ เหตุผลสองประการที่ฉันคิดได้คือการโหลดไฟล์ส่วนหัวและเรียกใช้ตัวประมวลผลล่วงหน้า แต่ดูเหมือนจะไม่อธิบายว่าทำไมจึงใช้เวลานาน


5
ไฟล์. a และ. so คืออะไร
ฉันกำลังพยายามพอร์ตแอปพลิเคชัน C ไปยังAIXและเริ่มสับสน ไฟล์. a และ. so คืออะไรและใช้อย่างไรเมื่อสร้าง / เรียกใช้แอปพลิเคชัน

7
ฉันจะตรวจสอบไวยากรณ์ของสคริปต์ Python โดยไม่ต้องดำเนินการได้อย่างไร
ฉันเคยใช้perl -c programfileเพื่อตรวจสอบไวยากรณ์ของโปรแกรม Perl แล้วออกโดยไม่ต้องดำเนินการ มีวิธีที่เทียบเท่ากับการทำสิ่งนี้กับสคริปต์ Python หรือไม่?

12
ข้อผิดพลาด: java: การเปิดตัวแหล่งที่ไม่ถูกต้อง: 8 ใน Intellij มันหมายความว่าอะไร?
ฉันพยายามรวบรวมรหัสบางอย่างในฉันใช้ Intellij Ultimate 13.1.4 แต่ฉันได้รับข้อผิดพลาดต่อไปนี้และฉันไม่รู้ว่ามันหมายถึงอะไร: Information:Using javac 1.7.0_55 to compile java sources Information:java: Errors occurred while compiling module 'Example' Information:Compilation completed with 1 error and 0 warnings in 3 sec Information:1 error Information:0 warnings Error:java: invalid source release: 8 ฉันเดาว่ามันเกี่ยวข้องกับ Java 8 กับ Java 7 แต่ฉันไม่รู้ว่าอะไรเป็นพิเศษ ฉันได้ลองใช้ Google เพื่อหาข้อความนี้ แต่พวกเขาอาจพูดถึงjavacหรือtarget …

4
การรวบรวมเชิงรุกน้อยกว่าด้วย CSS3 calc
หักคอมไพเลอร์ที่ผมใช้ ( OrangeBitsและdotless 1.3.0.5 ) จะอุกอาจแปล body { width: calc(100% - 250px - 1.5em); } เข้าไป body { width: calc(-151.5%); } ซึ่งเห็นได้ชัดว่าไม่ต้องการ ฉันสงสัยว่ามีวิธีส่งสัญญาณไปยังผู้รวบรวมน้อยกว่าหรือไม่เพื่อเพิกเฉยต่อแอตทริบิวต์ในระหว่างการรวบรวม ฉันค้นหาเอกสารน้อยกว่าและเอกสารของทั้งสองคอมไพเลอร์และฉันไม่พบอะไรเลย คอมไพเลอร์น้อยลงหรือน้อยลงสนับสนุนสิ่งนี้หรือไม่ ถ้าไม่มีจะมีตัวขยาย CSS ที่ใช้งานได้หรือไม่

24
การแสดงวันที่สร้าง
ขณะนี้ฉันมีแอพที่แสดงหมายเลขบิลด์ในหน้าต่างชื่อ นั่นเป็นเรื่องดีและดียกเว้นมันไม่มีความหมายสำหรับผู้ใช้ส่วนใหญ่ที่ต้องการทราบว่าพวกเขามีงานสร้างล่าสุดหรือไม่ - พวกเขามักจะอ้างถึงว่าเป็น "วันพฤหัสบดีที่ผ่านมา" แทนที่จะสร้าง 1.0.8.4321 แผนจะวางวันที่สร้างไว้แทนดังนั้นตัวอย่างเช่น "แอพที่สร้างขึ้นเมื่อวันที่ 21/10/2552" ฉันพยายามหาวิธีเขียนโปรแกรมเพื่อดึงวันที่สร้างออกมาเป็นสตริงข้อความสำหรับใช้งานเช่นนี้ สำหรับหมายเลขบิลด์ฉันใช้: Assembly.GetExecutingAssembly().GetName().Version.ToString() หลังจากกำหนดว่าสิ่งเหล่านั้นเกิดขึ้นได้อย่างไร ฉันต้องการบางสิ่งเช่นนี้สำหรับวันรวบรวม (และเวลาสำหรับคะแนนโบนัส) ตัวชี้ที่นี่ชื่นชมมาก (แก้ตัวถ้าเหมาะสม) หรือวิธีแก้ปัญหา neater ...
260 c#  date  time  compilation 

11
ทำไมคุณต้องลิงค์ห้องสมุดคณิตศาสตร์ใน C?
หากฉันรวม<stdlib.h>หรือ<stdio.h>อยู่ในโปรแกรม C ฉันไม่จำเป็นต้องเชื่อมโยงสิ่งเหล่านี้เมื่อรวบรวม แต่ฉันต้องเชื่อมโยงกับ<math.h>ใช้-lmกับ gcc ตัวอย่างเช่น: gcc test.c -o test -lm อะไรคือสาเหตุของสิ่งนี้? เหตุใดฉันจึงต้องเชื่อมโยงห้องสมุดคณิตศาสตร์อย่างชัดเจน แต่ไม่ใช่ห้องสมุดอื่น
254 c  compilation  math.h 

10
ทำไมต้องรวบรวมไพ ธ อนรหัส?
ทำไมคุณต้องรวบรวมสคริปต์ Python คุณสามารถเรียกใช้ได้โดยตรงจากไฟล์. py และใช้งานได้ดีดังนั้นจึงมีข้อได้เปรียบด้านประสิทธิภาพหรือไม่? ฉันยังสังเกตเห็นว่าบางไฟล์ในแอปพลิเคชันของฉันได้รับการคอมไพล์เป็น. pyc ในขณะที่ไฟล์อื่นไม่ทำทำไมถึงเป็นเช่นนั้น

3
วิธีการของจาวาที่มีคอมไพล์ประเภทส่งคืนโดยไม่มีคำสั่งส่งคืน
คำถามที่ 1: ทำไมรหัสต่อไปนี้จึงรวบรวมโดยไม่มีคำสั่ง return public int a() { while(true); } หมายเหตุ: Unreachable Code Errorหากฉันจะเพิ่มผลตอบแทนหลังจากที่ในขณะที่แล้วผมได้รับ คำถามที่ 2: ในทางกลับกันทำไมรหัสต่อไปนี้จึงรวบรวม public int a() { while(0 == 0); } แม้ว่าสิ่งต่อไปนี้จะไม่เป็นเช่นนั้น public int a(int b) { while(b == b); }

22
เหตุใดเวลารวบรวมของ Swift จึงช้ามาก
ฉันใช้ Xcode 6 Beta 6 นี่เป็นบางสิ่งบางอย่างที่ดักฟังฉันมาระยะหนึ่งแล้ว แต่มันมาถึงจุดที่ใช้งานได้แทบจะไม่แล้วในตอนนี้ โครงการของฉันเริ่มที่จะมีดีขนาด 65 ไฟล์อย่างรวดเร็วและไม่กี่สะพานไฟล์ Objective-C (ซึ่งจริงๆไม่ได้เป็นสาเหตุของปัญหา) ดูเหมือนว่าการดัดแปลงเล็กน้อยสำหรับไฟล์ Swift ใด ๆ (เช่นการเพิ่มพื้นที่สีขาวแบบง่าย ๆ ในคลาสที่แทบจะไม่เคยใช้ในแอพ) จะทำให้ไฟล์ Swift ทั้งหมดสำหรับเป้าหมายที่ระบุได้รับการคอมไพล์ใหม่ หลังจากการตรวจสอบที่ลึกกว่านี้ฉันพบว่าสิ่งที่ใช้เวลาในการรวบรวม 100% นั้นเป็นCompileSwiftขั้นตอนที่ Xcode ใช้swiftcคำสั่งในไฟล์ Swift ทั้งหมดของเป้าหมายของคุณ ฉันทำการตรวจสอบเพิ่มเติมและถ้าฉันเก็บตัวแทนแอพไว้ด้วยคอนโทรลเลอร์เริ่มต้นเท่านั้นการคอมไพล์นั้นเร็วมาก แต่เมื่อฉันเพิ่มไฟล์โครงการของฉันมากขึ้นเรื่อย ๆ เวลาในการคอมไพล์ก็เริ่มช้าลงจริง ๆ ขณะนี้มีไฟล์ต้นฉบับเพียง 65 ไฟล์จึงใช้เวลารวบรวมประมาณ 8/10 วินาทีในแต่ละครั้ง ไม่เร็วมากเลย ฉันไม่ได้เห็นโพสต์พูดคุยเกี่ยวกับปัญหานี้ยกเว้นคนนี้แต่มันเป็นรุ่นเก่า Xcode 6. ดังนั้นฉันสงสัยว่าถ้าผมเป็นเพียงหนึ่งในกรณีที่ UPDATE ฉันได้ตรวจสอบโครงการ Swift สองสามรายการบนGitHubเช่นAlamofire , EulerและCryptoSwiftแต่ไม่มีโครงการใดที่มีไฟล์ …

6
วิธีการแก้ไขข้อผิดพลาดกับ xml2-config ไม่พบเมื่อติดตั้ง PHP จากแหล่งที่มา?
เมื่อฉันพยายามติดตั้ง php 5.3 เสถียรจากแหล่งบน Ubuntu (ดาวน์โหลดไฟล์ติดตั้งที่บีบอัดจากhttp://www.php.net/downloads.php ) และฉันเรียกใช้./configureฉันได้รับข้อผิดพลาดนี้: configure: error: xml2-config not found. Please check your libxml2 installation.
208 php  compilation  php-5.3 

4
เหตุใดคลาส Java จึงคอมไพล์แตกต่างกับบรรทัดว่าง
ฉันมีคลาส Java ต่อไปนี้ public class HelloWorld { public static void main(String []args) { } } เมื่อฉันรวบรวมไฟล์นี้และเรียกใช้ sha256 กับไฟล์คลาสที่ได้รับ 9c8d09e27ea78319ddb85fcf4f8085aa7762b0ab36dc5ba5fd000dccb63960ff HelloWorld.class ต่อไปฉันแก้ไขคลาสและเพิ่มบรรทัดว่างแบบนี้: public class HelloWorld { public static void main(String []args) { } } อีกครั้งฉันรัน sha256 บนผลลัพธ์ที่คาดหวังว่าจะได้ผลลัพธ์เดียวกัน แต่กลับได้ 11f7ad3ad03eb9e0bb7bfa3b97bbe0f17d31194d8d92cc683cfbd7852e2d189f HelloWorld.class ฉันได้อ่านบทความ TutorialsPoint นี้แล้วว่า: บรรทัดที่มีช่องว่างเท่านั้นอาจมีความคิดเห็นเป็นที่รู้จักกันเป็นบรรทัดว่างและ Java ละเว้นทั้งหมด ดังนั้นคำถามของฉันคือเนื่องจาก Java ละเว้นบรรทัดว่างเหตุใด bytecode ที่คอมไพล์จึงแตกต่างกันสำหรับทั้งสองโปรแกรม …

3
วัตถุประสงค์ของการตั้งค่า“ 32 บิตแบบพิเศษ” ใน Visual Studio คืออะไรและใช้งานได้จริงอย่างไร
ไม่มีความชัดเจนสำหรับฉันว่าคอมไพเลอร์จะรู้การรวบรวม 64 บิตโดยอัตโนมัติอย่างไรเมื่อต้องการ จะทราบได้อย่างไรว่าสามารถกำหนดเป้าหมายไปที่ 32 บิตได้อย่างมั่นใจ ฉันส่วนใหญ่สงสัยว่าคอมไพเลอร์รู้ว่าสถาปัตยกรรมใดที่ต้องกำหนดเป้าหมายเมื่อรวบรวม มันวิเคราะห์รหัสและตัดสินใจตามสิ่งที่พบหรือไม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.