เรื่องควรรู้เกี่ยวกับการแข่งภาษา C

โดยส่วนตัวแล้วผมถนัดภาษา PHP กับ Python แค่นั้น
แต่ด้วยความที่มันก็เอาไปเขียนอย่างอื่นได้ เขียน C เขียน Java ได้
อาจารย์ที่โรงเรียนจึงส่งไปแข่งภาษานั่นๆนี่ๆ หรืออะไรที่มีคอมมาเกี่ยวบ่อยๆ

ล่าสุดก็นี่เลย ภาษา C

เขียนได้นะ แต่ไม่สันทัดเพราะไม่ค่อยใช้งาน Function ที่ควรจะรู้เลยไม่ได้หาๆมาใช้ไว้
รู้สึกว่าพร่ำเยอะไปละ เข้าเนื้อเถอะ

Function ที่ใช้บ่อยๆใน C

math.h

abs(x) หา Absolute
fabs(x) (Float abs)
sin(x)
cos(x)
tan(x)
exp(x) => e^x
pow(x,y) => x^y
sqrt(x)
log(x) => ฐาน e
log10(x) => ฐาน 10
ceil(x) => ปัดเศษขึ้น
floor(x) => ปัดเศษลง
fmod(x,y) เศษจากการหารของ x/y

string.h

strcat() => join 2 strings
strcmp() => ต่างกันเท่าไหร่
strcpy() => เอา string ไปไว้ใน char
strlen() => นับตัวอักษร

ทำความรู้จัก typedef ด้วยสิ

typedef data_type new_type;

ง่ายๆเลยคือการสร้างประเภทตัวแปรใหม่แบบเกร๋ๆ

เช่น

typedef int WowThisIsINT;

WowThisIsINT a = 5;

ค่า a จะเป็น 5 โดยมีประเภทตัวแปรเป็น WowThisIsINT แต่ WowThisIsINT สืบทอดมาจาก int เลยสามารถเก็บเลขได้

 

Enum!! (อีนุ่ม)

enum day_m {
sunday, monday, tuesday, wednesday, thursday, friday, saturday
}
day_m myDay;
myDay = monday;

ก็ตามที่เห็นนะ

 

แล้วก็ต่อที่ Pointer

มันจะมี * กับ & ผมค่อนข้างมั่นใจว่าคนที่เขียนภาษา C เคยใช้ & แน่นอนเพราะว่า

scanf(“%s”, &a);

ทีนี้เราจะมาดูกันจริงๆจังๆว่าคือยังไง

int a = 5;

int *b; //ตัวแปร pointer

b=&a; //เก็บที่อยู่ในหน่วยความจำของ a

printf(“This is a : %d\n”,a); //แสดงค่า a คือ 5

printf(“This is *b : %d\n”,*b); //แสดงค่า *b คือ 5

แถมอีกคำสั่งนึง free(&a);

 

สำหรับพวก array หรืออย่างอื่นไม่ค่อยห่วงเพราะเหมือนๆภาษาอื่นอยู่แแล้ว

ใส่ความเห็น

This site uses Akismet to reduce spam. Learn how your comment data is processed.