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

"printf" เป็นฟังก์ชันทั่วไปสำหรับเอาต์พุตที่จัดรูปแบบ C และภาษาอื่น ๆ อีกมากมายมีฟังก์ชันที่เกี่ยวข้องทั้งหมด ใช้แท็กนี้เฉพาะในกรณีที่คำถามเกี่ยวข้องโดยตรงกับ "printf" หรือฟังก์ชันที่เกี่ยวข้อง

30
JavaScript เทียบเท่ากับ printf / String.Format
ฉันกำลังมองหา JavaScript ที่เทียบเท่า C / PHP printf()หรือ C # / Java โปรแกรมเมอร์String.Format()( IFormatProviderสำหรับ. NET) ความต้องการพื้นฐานของฉันคือรูปแบบตัวคั่นพันสำหรับตัวเลขในตอนนี้ แต่สิ่งที่จัดการชุดค่าผสมจำนวนมาก (รวมถึงวันที่) จะดี ฉันทราบว่าไลบรารีAjaxของ Microsoft มีเวอร์ชันString.Format()ให้ แต่เราไม่ต้องการให้ค่าใช้จ่ายทั้งหมดของกรอบงานนั้น

10
เหตุใด printf จึงไม่ลบออกหลังจากการโทรยกเว้นว่ามีการขึ้นบรรทัดใหม่ในสตริงรูปแบบ
ทำไมprintfไม่ล้างออกหลังจากการโทรยกเว้นว่ามีการขึ้นบรรทัดใหม่ในสตริงรูปแบบ พฤติกรรม POSIX นี้หรือไม่ ฉันจะprintfล้างทันทีทุกครั้งได้อย่างไร
539 c  printf  flush 


5
ตัวระบุรูปแบบที่ถูกต้องสำหรับ double ใน printf
ตัวระบุรูปแบบที่ถูกต้องสำหรับdoubleใน printf คืออะไร มัน%fหรือมันคือ%lf? ฉันเชื่อว่ามัน%fแต่ฉันไม่แน่ใจ ตัวอย่างโค้ด #include <stdio.h> int main() { double d = 1.4; printf("%lf", d); // Is this wrong? }

8
ตัวระบุรูปแบบ printf สำหรับ bool คืออะไร
ตั้งแต่ ANSI C99 มี_Boolหรือผ่านทางbool stdbool.hแต่จะมีตัวprintfระบุรูปแบบสำหรับบูลด้วยหรือไม่ ฉันหมายถึงบางอย่างเช่นในรหัสหลอกว่า: bool x = true; printf("%B\n", x); ซึ่งจะพิมพ์: true
458 c++  c  boolean  printf 

30
มีตัวแปลง printf เพื่อพิมพ์ในรูปแบบไบนารีหรือไม่?
ฉันสามารถพิมพ์ด้วย printf เป็นเลขฐานสิบหกหรือฐานแปด มีแท็กรูปแบบที่จะพิมพ์เป็นไบนารีหรือฐานโดยพลการหรือไม่? ฉันกำลังเรียกใช้ gcc printf("%d %x %o\n", 10, 10, 10); //prints "10 A 12\n" print("%b\n", 10); // prints "%b\n"
434 c  printf 

12
วิธีหนึ่งสามารถพิมพ์ตัวแปร size_t แบบพกพาโดยใช้ตระกูล printf ได้อย่างไร
ฉันมีตัวแปรของชนิดและฉันต้องการที่จะพิมพ์โดยใช้size_t printf()ฉันใช้ตัวระบุรูปแบบใดเพื่อพิมพ์แบบพกพา ในเครื่อง 32- บิต%uดูเหมือนว่าถูกต้อง ฉันรวบรวมg++ -g -W -Wall -Werror -ansi -pedanticและไม่มีคำเตือน แต่เมื่อฉันรวบรวมรหัสนั้นในเครื่อง 64 บิตมันจะสร้างคำเตือน size_t x = <something>; printf("size = %u\n", x); warning: format '%u' expects type 'unsigned int', but argument 2 has type 'long unsigned int' %luคำเตือนออกไปตามที่คาดไว้ถ้าเปลี่ยนที่ คำถามคือฉันจะเขียนรหัสได้อย่างไรเพื่อรวบรวมคำเตือนฟรีทั้งบนเครื่อง 32- และ 64- บิต? แก้ไข: ในฐานะที่เป็นวิธีแก้ปัญหาผมคิดว่าหนึ่งคำตอบที่อาจจะมีการ "โยน" ตัวแปรลงในจำนวนเต็มที่เป็นพอใหญ่พูดและพิมพ์โดยใช้unsigned long %luที่จะทำงานในทั้งสองกรณี …
403 c  printf 

12
คุณจะทำการฟอร์แมท int long ที่ไม่ได้ลงนามโดยใช้ printf ได้อย่างไร?
#include <stdio.h> int main() { unsigned long long int num = 285212672; //FYI: fits in 29 bits int normalInt = 5; printf("My number is %d bytes wide and its value is %ul. A normal number is %d.\n", sizeof(num), num, normalInt); return 0; } เอาท์พุท: My number is 8 bytes wide …


10
การพิมพ์ชั้นนำ 0 ใน C?
ฉันกำลังพยายามหาวิธีที่ดีในการพิมพ์นำ 0 ของเช่น 01001 สำหรับรหัสไปรษณีย์ ในขณะที่หมายเลขจะถูกเก็บไว้ที่ 1,001 วิธีที่ดีที่จะทำคืออะไร? ฉันคิดว่าจะใช้ทั้งสองคำสั่ง case / ถ้าจะหาว่าตัวเลขเป็นตัวเลขแล้วแปลงเป็นอาร์เรย์ char ที่มี 0 พิเศษสำหรับการพิมพ์ แต่ฉันไม่สามารถช่วย แต่คิดว่าอาจมีวิธีการทำเช่นนี้กับ ไวยากรณ์รูปแบบ printf ที่ทำให้ฉันรำคาญ
345 c  printf 

8
วิธีการพิมพ์“ ไม่ได้ลงนามนาน” ใน C?
ฉันไม่สามารถเข้าใจวิธีการพิมพ์ unsigned longประเภทข้อมูลใน C สมมติว่าunsigned_fooเป็นunsigned longแล้วฉันลอง: printf("%lu\n", unsigned_foo) printf("%du\n", unsigned_foo) printf("%ud\n", unsigned_foo) printf("%ll\n", unsigned_foo) printf("%ld\n", unsigned_foo) printf("%dl\n", unsigned_foo) และพวกเขาทั้งหมดพิมพ์-123123123หมายเลขบางชนิดแทนที่unsigned longฉันมี

30
พิมพ์ 1 ถึง 1,000 โดยไม่มีลูปหรือเงื่อนไข
ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ภารกิจ : พิมพ์ตัวเลขตั้งแต่ 1 ถึง 1,000 โดยไม่ต้องใช้คำสั่งวนซ้ำหรือเงื่อนไขใด ๆ อย่าเพิ่งเขียนprintf()หรือcoutสั่ง 1,000 ครั้ง คุณจะทำเช่นนั้นโดยใช้ C หรือ C ++ ได้อย่างไร
323 c++  c  printf 


8
ความแตกต่างระหว่าง fprintf, printf และ sprintf หรือไม่
ทุกคนสามารถอธิบายในภาษาอังกฤษง่าย ๆ เกี่ยวกับความแตกต่างระหว่างprintf, fprintfและsprintfมีตัวอย่าง? กระแสข้อมูลคืออะไร ฉันสับสนระหว่างสามสิ่งนี้ในขณะที่อ่านเกี่ยวกับ "การจัดการไฟล์ใน C"
233 c  io  stream  printf 


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