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

4
ทำไมต้องใช้ตัวแปร int สำหรับพินเมื่อ const int, enum หรือ #define เหมาะสมกว่า
เหตุใดผู้คนจึงใช้ตัวแปรเพื่อระบุหมายเลขพินเมื่อพินไม่น่าจะเปลี่ยนแปลงตลอดการประมวลผลของรหัส? หลายครั้งที่ฉันเห็นสิ่งintที่ใช้สำหรับการกำหนดพิน int led = 13; เมื่อมีการใช้ const int const int led = 13; หรือenumหรือ#define #define LED 13 ทำให้รู้สึกมากขึ้น มันก็ยิ่งในบทเรียนบนเว็บไซต์ Arduino ตัวอย่างเช่นคนแรกที่กวดวิชาที่คนส่วนใหญ่เรียกใช้การกะพริบตา ผมอ่านบางที่เป็นที่ต้องการมากกว่าconst int #defineทำไมสิ่งนี้ไม่ได้รับการสนับสนุนตั้งแต่เริ่มต้นแทนที่จะปล่อยให้คนพัฒนานิสัยที่ไม่ดีตั้งแต่ต้น? ฉันสังเกตเห็นว่ามันกลับมาสักพักหนึ่ง แต่เมื่อเร็ว ๆ นี้มันเริ่มทำให้ฉันหงุดหงิด หน่วยความจำ / / การประมวลผลคอมพิวเตอร์ฉลาดเป็นconst int, enumหรือสำหรับเรื่องที่#defineดีกว่าธรรมดาintเช่นหมกมุ่นอยู่กับหน่วยความจำน้อยที่เก็บไว้ในหน่วยความจำที่แตกต่างกัน (Flash, EEPROM, SRAM) การดำเนินการได้เร็วขึ้นเร็วขึ้นเพื่อรวบรวม? สิ่งนี้อาจดูเหมือนซ้ำซ้อนกับการใช้ #define หรือ const int สำหรับค่าคงที่หรือไม่ แต่ฉันกำลังพูดถึงคำถามที่ว่าทำไมผู้คนถึงใช้ตัวแปรและประสิทธิภาพการทำงานดีขึ้นอย่างไรเมื่อไม่ใช้แทนที่จะเป็นค่าคงที่แบบไหนดีกว่า

4
ฉันจะประกาศอาร์เรย์ที่มีขนาดตัวแปรได้อย่างไร (ทั่วโลก)
ฉันต้องการสร้างสามอาร์เรย์ที่มีความยาวเท่ากัน ตามเอกสารประกอบอาร์เรย์ต้องถูกกำหนดเป็นint myArray[10];ตำแหน่งที่ 10 สามารถทดแทนความยาวที่รู้จัก (จำนวนเต็มอื่น) หรือเติมด้วยอาเร{2, 3, 5, 6, 7}ย์ แต่เมื่อฉันพยายามที่จะประกาศค่าint arrSize = 10;แล้วอาร์เรย์ขึ้นอยู่กับขนาดที่ฉันได้รับต่อไปนี้:int myArray[arrSize];error: array bound is not an integer constant มีวิธีในการกำหนดขนาดของอาเรย์ที่แตกต่างกันหรือไม่ (ฉันได้รับการสอนการเข้ารหัสฮาร์ดไดรฟ์ไม่ดีและสิ่งที่ต้องหลีกเลี่ยงค่าใช้จ่ายทั้งหมด)

2
มีทางเลือกที่ไม่ใช่ลอยเพื่อ pow ()?
ฉันได้ทำการอ้างอิงภาษา LANGUAGE ในเว็บไซต์ Arduinoและฉันไม่สามารถหาสิ่งที่ไม่เทียบเท่ากับที่pow() ฉันจะต้องหายไปบางสิ่งที่ใหญ่ แต่สำหรับชีวิตของฉันฉันนิ่งงัน! ฉันพบpow()ในคอลัมน์ FUNCTIONS ใต้หัวข้อ Math (เหมือนที่ฉันคาดไว้) แต่มันบอกว่าทั้งพารามิเตอร์ [base] และ [exponent] เป็นทั้งคู่ (float) และมีเพียงหกรายการอื่น ๆ ภายใต้หัวข้อคณิตศาสตร์; ดูเหมือนว่าพวกเขาจะไม่เป็นรุ่นจำนวนเต็ม สิ่งที่ฉันต้องการทำคือสร้างพลังของ 2 โดยใช้เลขชี้กำลังจาก 0 ถึง 10 เช่น 2 ^ 0 = 1 จากนั้น 2 ^ 1 = 2 จากนั้น 2 ^ 2 = 4 จากนั้น 2 ^ 3 = …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.