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

4 Jan 2018

Share to:

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

ตัวแปรแบบโกลบอล (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

การเขียน Regular expressions

Regular expressions คืออะไรRegular expressions คือรูปแบบของตัวอักษรที่ใช้คนหาข้อความใน string เช่น ถ้าต้องการหาข้อความที่เป็นตัวเลขติดกันสองตัวจาก string "test01 test1" ซึ่งเราจะสามารถค้นหาและดึงเอาข้อความที่เป็นตัวเลขติดกัน(01) ออกมาได้

Review ไฟฉาย JetBeam IIM

ไฟฉาย JetBeam รุ่น IIM เป็นไฟฉายรุ่นที่มีความสว่างสูงสุด 1,100 Lumens แสงพุ่งไกลถึง 230 เมตร จุดเด่นคือ สามารถล็อค switch ปิด-เปิด ได้เพื่อป้องกันไม่ให้เปิดไฟฉายโดยบังเอิญ

Daylight Saving Time คืออะไร

Daylight Saving Time คือ การปรับเวลาให้เร็วขึ้นหรือช้าลง เนื่องจากแกนโลกมีความเอียงเล็กน้อย ทําให้ในประเทศที่อยู่แถบซีกโลกเหนือมีช่วงเวลากลางวัน และกลางคืนมีระยะเวลายาวนานไม่เท่ากันในแต่ละเดือน ในบางเดือนช่วงเวลากลางวันยาวนานมากอาจจะยาวไปถึง 3-4 ทุ่ม ก็ยังสว่างอยู่ ซึ่งต่างจากประเทศที่อยู่ในแถบเส้นศูนย์สูตรหรือเขตร้อนอย่างไทยเรา


Copyright © 2019 - 2024 thiti.dev |  v1.34.0 |  Privacy policy | 

Build with ❤️ and Astro.

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