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

4 Jan 2018

Share to:

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

Brave Browser คืออะไร

สวัสดีครับ ในบทความนี้ผมจะแนะนํา Browser ตัวนึงที่ชื่อว่า Brave ซึ่งในเนื้อหาจะแนะนําว่า Brave Browser คืออะไร ต่างจาก Browser ทั่วไปอย่าง Chrome, Firefox อย่างไร

Pull up, Pull down คืออะไร?

Pull up, Pull down คืออะไร?คือการต่อ ตัวต้านทานที่ขา input ของไมโครคอนโทลเลอร์ เหตุผลที่ต้องต่อคือ ถ้าเราต่อสวิตส์หรือ เซนเซอร์ต่างๆ เข้ากับไมโครคอนโทรเลอร์ตรงๆ อย่างเดียว อาจจะทำให้เกิดสัญญาณรบกวนได้ในกรณีที่ input ถูกลอยขาไว้ ไม่ได้จ่าย logic high หรือ low เช่น การต่อสวิตส์ ถ้าเรากดสวิตส์ จะทำให้มี logic high จ่ายให้กับ input ของไมโครคอนโทลเลอร์ แต่ถ้าเราปล่อยสวิตส์ ทำให้ ขา input ถูกลอยไว้ ไม่ได้ต่อลงกราวหรือ logic low ดังนั้นจึงต้องต่อ Pull up, Pull down เพื่อให้แน่ใจว่าเป็น logic high หรือ low เสมอ ถึงแม้ว่าจะไม่มี input ป้อนเข้ามา

Journaling file system คืออะไร

Journaling file system เป็น file system ที่เก็บการเปลี่ยนแปลงของข้อมูลที่ยังไม่ถูกบันทึกลง system หลัก ซึ่งจะช่วยทําให้ไม่เกิดการสูญหายของข้อมูล เมื่อเกิดปัญหากับ Hardware เช่น ไฟดับ หรือระบบส่วนใดส่วน


Copyright © 2019 - 2025 thiti.dev |  v1.46.0 |  Privacy policy | 

Build with ❤️ and Astro.

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