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

Vue.js เริ่มต้น ตอน3 (Template syntax)

สวัสดีครับ ในหัวข้อนี้จะเกี่ยวข้องกับรูปแบบการเขียน หรือ Syntax ของ Template ที่อยู่ภายใน Component หรือพูดง่ายๆก็คือการเขียน UI ของ Component นั้นแหละครับ ซึ่งมันจะเขียนเป็น HTML ธรรมดา แต่ก็จะมี Syntax บางอย่างที่จะเขียนในรูปแบบของ Vue ซึ่งจะทําให้เราเขียน Code ได้ง่ายขึ้น ถ้ายังนึกไม่ออกว่า Template มัน

วิธีออกแบบระบบ โซล่าเซลล์

ในบทความนี้เป็นเรื่องเกี่ยวกับการออกแบบและคํานวณระบบโซล่าเซลล์ ซึ่งจะหาว่าถ้าเราใช้อุปกณ์ไฟฟ้าเท่านี้เราจะใช้โซล่าเซลล์ เท่าไร แบตเตอรรี่เท่าไร

swap memory ใน ubuntu

swap คือ file ประเภทหนึ่งที่ทําหน้าที่คลาย ram โดยจะต่างจาก ram ตรงที่ เป็นไฟล์ที่ถูกเขียนบน HDD ซึ่งจะมีความเร็วน้อยกว่า ram ในกรณีที่ ram ไม่พอ เราสามารถสร้าง swap มาใช้เป็น ram สํารองได้


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

Build with ❤️ and Astro.

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