[ภาษาซี] การรับข้อมูล (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

Review unbox Raspberry Pi2 model B 1GB

สวัสดีครับ วันนี้เราจะมาแกะกล่อง Raspberry Pi2 model B กัน รุ่นนี้มาพร้อมกับ Ram 1 Gb หลายๆท่านคงรู้จักกันแล้วนะครับ แต่ถ้ายังไม่รู้จักจะอธิบายให้ฟังครับ มันคือ คอมพิวเตอร์ขนาดเล็ก(ขนาดประมาณ 1 ฝ่ามือ)  ภายในจะรัน OS RASPBIAN ซึ่งถูกพัฒนามาจาก Debian

ไดโอด (Diode)

ไดโอด (Diode)ไดโอด เป็นอุปกรณ์อิเล็กทรอนิกส์ ที่ทํามาจากสารกึ่งตัวนําชนิด p-n ซึ่งมีคุณสมบัติคือ ยอมให้กระแสไฟฟ้าไหลผ่านได้เพียงทิศทางเดียว

ติดตั้ง และ share printer to raspberry pi or linux computer

สวัสดีครับ ในบทความนี้ผมจะมาแนะนําวิธีการ ติดตั้ง printer ใน raspberry pi หรือ computer ที่มี os เป็น linux ในการจัดการ printer บน linux จะต้องใช้โปรแกรม CUPS เข้ามาช่วย


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

Build with ❤️ and Astro.

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