[ภาษาซี] การรับข้อมูล (input)

4 Jan 2018,
Share: 

function ที่ใช้ในการรับข้อมูลจากคีย์บอร์ด คือ scanf (scan formatted) รูปแบบการใช้งานคือ

scanf("string_format", address_list);
  • string_format คือ ต่างจาก string format ของ printf ตรงที่ string format ของ scanf() จะอยู่ในรูปแบบของตัวแทนข้อมูลชนิดต่างๆ เช่น %d, %c, $s, %f…
  • address_list คือ เป็นตัวระบุที่อยู่ในหน่วนความจําที่จะใช้ในการเก็บข้อมูลที่รับเข้ามา โดย address list จะต่างจาก data list ของ printf() ตรงที่ data list จะเป็นการระบุถึงข้อมูลโดยตรง ทําให้อ้างถึงตัวแปรนั้นได้โดยตรง แต่ address list จะต้องระบุเป็น address ของตัวแปร โดยใส่เครื่องหมาย & (ampersand) หน้าตัวแปร

ตัวอย่าง

#include <stdio.h>

main(){
    int x = 3;
    printf("Value x is: %d", x);
    scanf("%d", &x);
    printf("New value x is: %d", x);
}

การใช้ scanf() รับข้อมูลที่เป็น string เราจะไม่ใส่ & ด้านหน้าตัวแปร เนื่องจากภาษาซีกําหนดให้ชื่อตัวแปรชนิด string (ซึ่งเป็น array ของข้อมูลชนิด char) เป็นการอ้างถึงที่อยู่ของตัวแปรนั้นๆอยู่แล้ว

Suggestion blogs

ต้นลิ้นมังกร Snake plant ช่วยฟอกอากาศ

ลิ้นมังกรมีคุณสมบัติ ช่วยฟอกอากาศบริเวณรอบ ๆ โดยจะคายก๊าซ Oxygen ในเวลากลางคืน สามารถปลูกภายในห้องนอนได้ จะช่วยฟอกอากาศภายในห้องนอน ให้มีคุณภาพมากขึ้น ช่วยดูดซับสารพิษ ไอระเหยประเภทฟอร์มาลดีไฮด์ โทลูอีน เบนซิน คลอโรฟอร์ม ก๊าซคาร์บอนมอนอกไซด์ และสารพิษอื่น ๆ ที่มาจากสีทาบ้าน เฟอร์นิเจอร์ เครื่องถ่ายเอกสาร

Backup ข้อมูลพร้อมกับ permission, user id และ group id ด้วย tar ใน ubuntu

สวัสดีครับ เนื้อหาในบทความนี้เป็นเรื่องการ Backup แล้ว zip file โดยที่ permission, user id และ group id จะต้องเหมือนต้นฉบับเมื่อ unzip แล้ว

วิธีใช้ Props children ใน react

สวัสดีครับ บทความนี้จะเป็นการเรียนรู้และ ทําความเข้าใจในส่วนของเรื่อง Props children ใน React รวมไปถึงวิธีการใช้งานในแบบต่างๆ


Copyright © 2019 - 2026 thiti.dev |  v1.60.2 |  Privacy policy | 

Build with ❤️ and Astro.

Github profile   Linkedin profile   Instagram   X profile   Nostr   Youtube channel   Telegram   Email contact   วงแหวนเว็บ