[ภาษาซี] ประเภทของตัวแปร

4 Jan 2018,
Share: 

ในภาษาซี ตัวแปรที่ประกาศขึ้นสําหรับใช้งานจะแบ่งออกเป็นสองประเภทดังนี้

ตัวแปรแบบโกลบอล (Global Variable)

ตัวแปรประเภทนี้จะถูกประกาศอยู่นอก function นั่นหมายความว่า ทุกๆ function จะสามารถเข้าถึงตัวแปรนี้ได้ คือ function ทุกๆ dunction จะามารถเรียกใช้งานตัวแปรตัวนี้ได้

ตัวแปรแบบโลคอล (Local variable)

ตัวแปรชนิดนี้จะถูกประกาศไว้ใน function ใดๆ โดยขอบเขตของตัวแปรจะอยู่ภายใน function นั้นๆ function อื่นๆจะไม่สามารถเข้าถึง หรือเรียกใช้ตัวแปรนี้ได้ เรามาดูตัวอย่างของตัวแปรทั้งสองประเภทกันครับ

#include <stdio.h>

int i = 1;

int testGlobalVar(int x){
    int n = 3;
    return n * x;
}

main(){
    int m;
    printf("Global variable i is %d\n", i);
    m = testGlobalVar(i);
    m = m * n;
    printf("Local variable m is %d\n", m);
}

จาก sourec code ตัวอย่าง จะเห็นว่าตัวแปร i ที่ประกาศไว้นอก function ทําให้สามารถเรียกใช้จาก function main ได้ แต่ n ถูกประกาศไว้ภายใน function testGlobalVar  จาก soure code เมื่อ รันโปรแกรมจะทําให้เกิด error ขึ้นที่บรรทัด 14 เนืองจาก ตัวแปร n เป็น Local Variable แล้ว function main มาเรียกใช้ ดังนั้นถ้าต้องการให้โปรแกรมรันผ่าน จะต้องตัดบรรทัดที่ 14 ออก

Suggestion blogs

วิธีใช้ PL2303 USB to serial TTL

PL2303 USB to serial TTL เป็น อุปกรณ์ที่ใช้แปลงจาก USB เป็น serial TTL ส่วนใหญ่จะนําไปใช้เชื่อมต่อ Computer เข้ากับ Raspberry pi

เรื่อง config login ssh ของ user root

สําหรับบทความนี้เป็นบทความสั้นๆนะครับ เป็นเรื่องเกี่ยวกับการ config เพื่อกําหนดการ login ssh ของ user root โดยเราจะแก้ไข file config นี้ "/etc/ssh/sshd_config" ผมจะแบ่งการ config เป็นสองหัวข้อคือ

Install docker on raspberry pi

ในบทความนี้ผมจะพูดถึงวิธีการ install docker ใน raspberry pi (สําหรับใครที่ยังไม่รู้ว่า Docker คืออะไรให้อ่านบทความนี้ก่อน Docker คืออะไร ครับ) เริ่มต้นด้วยการเตรียมอุกปรณ์ดังนี้raspberry pi (ในบทความนี้ผมใช้ raspberry pi 2)SD Card ที่ติดตั้ง RASPBIAN เรียบร้อยวิธีติดตั้งสามารถทําได้สองวิธีคือ


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

Build with ❤️ and Astro.

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