01/10/2018, 15:29

Bài 4: Cú pháp cơ bản C

Ở bài trước chúng ta đã học về cấu trúc cơ bản của một chương trình C, vì vậy sẽ rất dể dàng để hiểu các khối xây dựng cở bản khác của ngôn ngữ lập trình C Nhìn vào ví dụ của bài trước Cấu trúc chương trình C #include<stdio.h> int main(){ /* my first programin C */ ...

Ở bài trước chúng ta đã học về cấu trúc cơ bản của một chương trình C, vì vậy sẽ rất dể dàng để hiểu các khối xây dựng cở bản khác của ngôn ngữ lập trình C

Nhìn vào ví dụ của bài trước Cấu trúc chương trình C

#include<stdio.h>

int main(){

/* my first programin C */

printf(“Hello, world! ”);

return 0;

}

Hàm main()

Chương trình C bắt đầu thực thi từ hàm main và body của hàm nằm trong {}. Nếu không khai báo hàm main thì trình biên dịch sẽ báo lổi. Vậy kiểu của hàm main thì  như thế nào, có giá trị trả về hay không có giá trị trả về, có đối số hay không v.v… Vấn đề sẽ được học ở bài học kế tiếp, đừng lo lắng :).

Semicolons (dấu chấm phẩy ; )

Trong chương trình C, dấu chấm phẩy là để kết thúc một cậu lệnh, một phát biểu. Có nghĩa là mổi một phát biểu hay người ta thường gọi là dòng lệnh thì phải kết thúc bằng một dấu chấm phẩy

Trong ví dụ chúng ta có 2 dòng lệnh

printf(“Hello, World! ”);

return 0;

Comments (chú thích, ghi chú)

Việc ghi chú thích giúp cho chương trình chúng ta dể đọc, dể hiểu nếu người khác nhìn vào, và dể bảo trì sau một thời gian chúng ta nhìn lại chúng. Để ghi chú thích chúng ta bắt đầu bằng /* và kết thúc bằng */. Đoạn văn bản trong giữa ký hiệu /*…*/ này được trình biên dịch C bỏ qua khi biên dịch chương trình. Nếu chỉ cần chú thích trên một dòng thì kiểu ngắn gọn chúng ta dùng ký hiệu //…..

Identifiers (định danh)

Một định danh trong C là tên để xác định một biến, hàm hay bất kỳ mục người dùng định nghĩa khác.

Như trong ví dụ của chúng ta thì printf, main là một identifier,đây là hàm mà C đã định nghĩa trước trong thư viện, do vậy chúng ta có thể gọi chúng là hàm chuẩn,hoặc theo tài liệu tiếng anh thì họ gọi là magic function, chúng ta có thể dùng nguyên từ chuyên môn mà k cần phải dịch .

Hàm và biến được đặt tên với bắt đầu là A->Z,a->z, hoặc một ký tự gạch dưới giữa các số, hoắc các ký tự, các số bao gồm 0à9.

Hàm và biến không bắt đầu bằng số và trong hàm và biến không chứa các ký tự như @,$ và %.

Ngôn ngữ C phân biệt hoa thường do vậy khi đặt tên hàm, biến phải cẩn thận vì Printf và printf là 2 hàm khác nhau, hoặc người dùng sẽ định nghĩa hàm của mình như tong_so và Tong_so, Tong_So là các hàm khác nhau. Một số ví dụ đặt tên hàm và biến hợp lệ như sau :

EX : abc, move_name, a_123, _cake, j, a23b8, retVal, dammelaptrinh2016 …

Và như thế này sẽ ăn lổi: 1a, ab@c, cake% …

Keywords

Trong C có một số các từ dành riêng mà không được dùng để đặt tên biến, hằng số, hàm hay bất kỳ tên định danh nào khác. Dưới đây là danh sách các từ dành riêng trong C:

auto else long switch
break enum register typedef
case extern return union
char float short unsigned
const for signed void
continue goto sizeof volatile
default if static while
do int struct _Packed
double

Trong ví dụ của chúng ta có dùng 1 từ dành riêng để khai báo đó là int main(). Từ int là một keyword thông báo cho trình biên dịch C biết kiểu trả về của hàm main là một giá trị số nguyên, chữ int viết tắt của integer(số nguyên) và câu lệnh return 0; ở cuối hàm main là trả về giá trị 0, giá trị số nguyên của hàm main như ta đã khai báo kiểu trả về là int.

Ở bài học này chúng ta chỉ hiểu cú pháp cơ bản của C, còn đi sâu hơn về hàm ,biến thì chúng ta sẽ học ở bài tiếp theo, để tránh lang mang cho các bạn do vậy chúng ta chỉ tập trung học từng chủ đề theo thứ tự giáo trình tôi đã biên soạn. Các bạn không cần phải lo lắng nhiều thứ gặp phải trong ví dụ mà chưa được giải đáp trong bài học này, cứ bám sát theo giáo trình của dammelaptrinh.com thì mọi vấn đề sẽ được sáng tỏ theo một trình tự giúp bạn dể nhớ, dể hiểu nhất.

Rồi chúng ta chỉ còn 1 mục nữa là kết thúc bài học này:

Whitespace in C (Khoảng trắng trong C)

Một dòng chỉ chứa khoảng trắng, có thể là một comment thì trình biên dịch C hoàn toàn bỏ qua nó.

Khoảng trắng là tách một phần của một câu lệnh từ keyword tới thành phần khác, hoặc từ các thành phần khác nhau, chúng ta xét ví dụ cho dể hình dung:

EX: int age;

chúng ta vừa khai báo một biến có tên là tuổi và có kiểu giá trị là int và giữa chúng có một khoảng trắng để giúp C phân biệt, có thể có nhiều khoảng trắng nhưng nếu không có yêu cầu đặc biệt thì chúng ta nên dùng 1 khoảng trắng là đủ rồi, vừa đẹp và đúng chuẩn.

một ví dụ khác:

total_fruit = apples + oranges; // lấy tổng số trái cây

không có khoảng trắng cần thiết giữa total_fruit và = hoặc giữa = và apples, tuy nhiên để tăng khả năng đọc chúng ta đưa thêm khoảng trắng vào, chúng ta có thể viết total_fruit=apples + oranges; 2 câu đều như nhau khi thực hiện.

Tóm tắt: Qua bài học này các bạn sẽ nắm được cú pháp của ngôn ngữ C như:

  1. Cuối câu, dòng lệnh phải có dấu chấm phẩy ;
  2. Cách đặt comment mô tả chức năng
  3. Các đặt tên định danh (hàm, biến, hằng v.v…)
  4. Các từ khóa dành riêng trong C không được dùng để đặt tên định danh
  5. Khoảng trắng trong khai báo hàm, biến và trong phép toán.

Bài kế tiếp chúng ta sẽ học về các kiểu dữ liệu trong C

Xin chào tạm biệt. bye bye !

0