หน้าแรก
หน้าแรก
ขอบเขตท้องถิ่น ขอบเขตภายในระบุว่าตัวแปรที่กำหนดภายในบล็อกจะมองเห็นได้เฉพาะในบล็อกนั้นและมองไม่เห็นภายนอกบล็อก ขอบเขตทั่วโลก Global scope ระบุว่าตัวแปรที่กำหนดนอกบล็อกสามารถมองเห็นได้จนถึงจุดสิ้นสุดของโปรแกรม ตัวอย่าง #include<stdio.h> int r= 50; /* global area */ main (){ int p
อาร์เรย์ อาร์เรย์คือกลุ่มของรายการที่เกี่ยวข้องซึ่งจัดเก็บด้วยชื่อสามัญ ต่อไปนี้เป็นสองวิธีในการส่งอาร์เรย์เป็นอาร์กิวเมนต์ไปยังฟังก์ชัน - ส่งทั้งอาร์เรย์เป็นอาร์กิวเมนต์ไปยังฟังก์ชัน ส่งแต่ละองค์ประกอบเป็นอาร์กิวเมนต์ไปยังฟังก์ชัน ส่งทั้งอาร์เรย์เป็นอาร์กิวเมนต์ไปยังฟังก์ชัน ในการส่งทั้งอาร์เ
หากแต่ละองค์ประกอบถูกส่งผ่านเป็นอาร์กิวเมนต์ จะต้องกำหนดองค์ประกอบอาร์เรย์พร้อมกับตัวห้อยในการเรียกใช้ฟังก์ชัน ในการรับองค์ประกอบ จะใช้ตัวแปรอย่างง่ายในการกำหนดฟังก์ชัน ตัวอย่างที่ 1 #include<stdio.h> main (){ void display (int, int); int a[5], i; clrscr
ตัวชี้เป็นตัวแปรที่เก็บที่อยู่ของตัวแปรอื่น การประกาศตัวชี้ การเริ่มต้น และการเข้าถึง พิจารณาข้อความต่อไปนี้ − int qty = 179; การประกาศตัวชี้ int *p; p คือตัวแปรตัวชี้ที่เก็บที่อยู่ของตัวแปรจำนวนเต็มอื่น การเริ่มต้นของตัวชี้ ตัวดำเนินการที่อยู่ (&) ใช้เพื่อเริ่มต้นตัวแปรตัวชี้ int qty = 175; in
พอยน์เตอร์และอาร์เรย์ คอมไพเลอร์จะจัดสรรตำแหน่งหน่วยความจำอย่างต่อเนื่องสำหรับองค์ประกอบทั้งหมดของอาร์เรย์ ที่อยู่ฐานคือตำแหน่งขององค์ประกอบแรกในอาร์เรย์ ตัวอย่างเช่น int a [5] ={10, 20,30,40,50}; ห้าองค์ประกอบจะถูกเก็บไว้ดังนี้ - ถ้า p ถูกประกาศเป็นตัวชี้จำนวนเต็ม อาร์เรย์ a สามารถชี้ได้โดย
อาร์เรย์ของพอยน์เตอร์ เช่นเดียวกับประเภทข้อมูลอื่นๆ เราสามารถประกาศอาร์เรย์ตัวชี้ได้ ประกาศ datatype *pointername [size]; ตัวอย่างเช่น int *p[5]; //แสดงอาร์เรย์ของพอยน์เตอร์ที่สามารถเก็บที่อยู่องค์ประกอบจำนวนเต็มได้ 5 รายการ การเริ่มต้น & ใช้สำหรับการเริ่มต้น ตัวอย่างเช่น int a[3] = {10,20,30}
ตัวชี้การทำงาน มันเก็บที่อยู่พื้นฐานของการกำหนดฟังก์ชันในหน่วยความจำ ประกาศ datatype (*pointername) (); ชื่อของฟังก์ชันเองจะระบุที่อยู่พื้นฐานของฟังก์ชัน ดังนั้น การเริ่มต้นทำได้โดยใช้ชื่อฟังก์ชัน ตัวอย่างเช่น int (*p) (); p = display; //display () is a function that is defined. ตัวอย่างที่ 1 เร
อาร์เรย์ของพอยน์เตอร์ (เป็นสตริง) Array of pointers คืออาร์เรย์ที่มีองค์ประกอบเป็นตัวชี้ไปยังที่อยู่พื้นฐานของสตริง มีการประกาศและเริ่มต้นดังนี้ - char *a[3 ] = {"one", "two", "three"}; //Here, a[0] is a ptr to the base add of the string "one" //a[1] is a pt
ฟังก์ชันไลบรารีสตริง ฟังก์ชันที่กำหนดไว้ล่วงหน้าซึ่งออกแบบมาเพื่อจัดการกับสตริงมีอยู่ในไลบรารี string.h พวกมันคือ − strlen () strcmp () strcpy () strncmp () strncpy () strrev () strcat () strstr () strncat () ฟังก์ชัน strlen () ส่งกลับจำนวนอักขระในสตริง ไวยากรณ์ int strlen (string name) ตัวอย่าง
ปัญหา คุณหมายถึงอะไรโดยการแปลงสตริงเป็นตัวเลขและการแปลงตัวเลขเป็นสตริงในภาษาการเขียนโปรแกรม C วิธีแก้ปัญหา มีสองฟังก์ชั่นสำหรับการแปลง พวกมันคือ − sscanf() - แปลงสตริงเป็นตัวเลข sprintf () - ใช้สำหรับแปลงตัวเลขเป็นสตริง การแปลงสตริงเป็นตัวเลข เราสามารถแปลงสตริงเป็นตัวเลขโดยใช้ฟังก์ชัน sscanf()
ก่อนจะไปทำความรู้จักกับการแปลงอักษรตัวพิมพ์ใหญ่เป็นตัวพิมพ์เล็กโดยไม่ต้องใช้ฟังก์ชันการแปลงสตริง ให้เราดูที่โปรแกรมแปลงบนเป็นล่างโดยใช้ฟังก์ชั่นแปลงแล้วคุณจะได้รับความกระจ่างเกี่ยวกับสิ่งที่เรากำลังทำในโปรแกรม - ตัวอย่าง #include <stdio.h> #include <string.h> int main(){ ch
การใช้ฟังก์ชัน strrev() ฟังก์ชันนี้ใช้สำหรับการย้อนกลับสตริง สตริงที่ย้อนกลับจะถูกเก็บไว้ในสตริงเดียวกัน ไวยากรณ์ strrev (string) ก่อนที่จะทำการย้อนกลับสตริงโดยไม่ต้องใช้ฟังก์ชัน เรามาดูวิธีการย้อนกลับสตริงโดยใช้ฟังก์ชันสตริง strrev() กัน เพื่อให้เราสามารถค้นหาความแตกต่างและทำความเข้าใจแนวคิดได้อ
Typedef C อนุญาตให้กำหนดชื่อประเภทข้อมูลใหม่โดยใช้คำหลัก typedef การใช้ typedef ทำให้เราสร้างประเภทข้อมูลใหม่ไม่ได้ แต่จะกำหนดชื่อใหม่สำหรับประเภทที่มีอยู่แล้ว ไวยากรณ์ typedef datatype newname; ตัวอย่าง typedef int bhanu; int a; bhanu a; %d คำสั่งนี้บอกให้คอมไพเลอร์รู้จัก bhanu เป็นอีกชื่อหนึ่งสำ
ส่งผ่านสมาชิกแต่ละคนเป็นอาร์กิวเมนต์ในการทำงาน - สมาชิกแต่ละคนจะถูกส่งผ่านเป็นอาร์กิวเมนต์ในการเรียกใช้ฟังก์ชัน พวกมันถูกรวบรวมอย่างอิสระในตัวแปรธรรมดาในส่วนหัวของฟังก์ชัน ตัวอย่าง #include<stdio.h> //Declaring structure// struct student{ int s1,s2,s3; }s[5]; //Declaring a
ส่งที่อยู่ของโครงสร้างเป็นอาร์กิวเมนต์ไปยังฟังก์ชัน - ที่อยู่ของโครงสร้างจะถูกส่งผ่านเป็นอาร์กิวเมนต์ของฟังก์ชัน มันถูกรวบรวมไว้ในตัวชี้ไปยังโครงสร้างในส่วนหัวของฟังก์ชัน ข้อดี ไม่มีการสูญเสียหน่วยความจำเนื่องจากไม่จำเป็นต้องสร้างสำเนาอีกครั้ง ไม่จำเป็นต้องคืนค่ากลับเนื่องจากฟังก์ชันสา
ตัวชี้ไปยังโครงสร้างถือที่อยู่ของโครงสร้างทั้งหมด ส่วนใหญ่ใช้เพื่อสร้างโครงสร้างข้อมูลที่ซับซ้อน เช่น รายการที่เชื่อมโยง ต้นไม้ กราฟ และอื่นๆ ) ประกาศ ต่อไปนี้เป็นคำประกาศสำหรับตัวชี้ไปยังโครงสร้าง - struct tagname *ptr; ตัวอย่างเช่น จัดโครงสร้างนักเรียน *s; การเข้าถึง คุณสามารถเข้าถึงตัวชี้ไปย
ตัวชี้ไปยังโครงสร้างถือที่อยู่ของโครงสร้างทั้งหมด ส่วนใหญ่ใช้เพื่อสร้างโครงสร้างข้อมูลที่ซับซ้อน เช่น รายการที่เชื่อมโยง ต้นไม้ กราฟ และอื่นๆ ) ประกาศ ต่อไปนี้เป็นคำประกาศสำหรับตัวชี้ไปยังโครงสร้าง - struct tagname *ptr; ตัวอย่างเช่น จัดโครงสร้างนักเรียน *s; การเข้าถึง คุณสามารถเข้าถึงตัวชี้ไปย
ความแตกต่างระหว่างโครงสร้างและสหภาพแรงงานในภาษา C อธิบายไว้ด้านล่าง - S.No โครงสร้าง ยูเนี่ยน 1 คำจำกัดความ โครงสร้างคือการรวบรวมข้อมูลรายการต่าง ๆ ที่จัดกลุ่มเข้าด้วยกันภายใต้ชื่อเดียว คำจำกัดความ ยูเนี่ยนคือตำแหน่งหน่วยความจำที่ใช้ร่วมกันโดยตัวแปรหลายตัวของประเภทข้อมูลที่แตกต่างกัน 2 ไวยา
ถ้าโครงสร้างซ้อนกันภายในยูเนี่ยน เรียกว่า การรวมกันของโครงสร้าง มีความเป็นไปได้ที่จะสร้างสหภาพภายในโครงสร้างในภาษาซีโปรแกรม ตัวอย่าง ต่อไปนี้เป็นโปรแกรม C สำหรับการรวมโครงสร้าง - #include<stdio.h> struct x { int a; float b; }; union z{ struct x s; }; mai
I/O หมายถึงฟังก์ชันอินพุต - เอาต์พุตในภาษา C I/O ระดับสูง สิ่งเหล่านี้เข้าใจได้ง่ายโดยมนุษย์ ข้อดีคือพกพาสะดวก I/O ระดับต่ำ คอมพิวเตอร์เข้าใจสิ่งเหล่านี้ได้ง่าย ข้อดีคือใช้เวลาดำเนินการน้อยกว่า ข้อเสียคือ ไม่สามารถพกพาได้ ฟังก์ชัน I/O ระดับสูง ฟังก์ชันอินพุต - เอาท์พุต (I/O) ระดับสูงมีคำอธิบายด