ทำไมคนทุบตีจึงคิดเลข 010 = 8
x=010
echo $x
010
echo $(( x+0 ))
8
echo $(( x-2 ))
6
ฉันคิดว่ามันอาจเป็นเลขฐานสอง แต่ 010 = 10 = 2 แล้วทำไมมันถึงได้ 8 และฉันจะทำให้มันคิดว่า 010 = 10 (และ 010 - 2 = 8) ได้อย่างไร
ในตัวแยกวิเคราะห์ตัวเลขจำนวนมาก
—
Derek 朕會功夫
010
หมายถึง 8 เพราะการใส่เครื่องหมาย0
ด้านหน้าหมายถึงเลขฐานแปดเหมือนกับวิธีการใส่0x
ในบางภาษาหมายถึงเลขฐานสิบหก
นี่เป็นสิ่งสำคัญที่ควรทราบเมื่อเขียนโปรแกรม ในภาษาส่วนใหญ่
—
เซท
0
ทริกเกอร์ฐานแปดฐาน0x
สิบหกและ0b
ไบนารี
คำอธิบายลงคะแนนได้หรือไม่
—
ทิม
@ ทันเวลาทำไมถึงไม่เป็น 8? ;-) โอ้ไม่ใช่ downvote ของฉัน แต่อาจเป็นเพราะมันธรรมดาเกินไป มันเป็นพฤติกรรมปกติ
—
Rinzwind
0
บอกให้เป็นฐานแปด หากคุณเพียงแค่ทำx=10
แล้วแล้วแสดงให้เห็นว่าecho $((x+0))
10
นอกจากนี้ยังมีความจำเป็นในการเสริมไม่มีกับใน$
()