Ngôn ngữ lập trình C/Mệnh đề

Các mệnh đề phức hợp

edit

Câu lệnh phức hợp được bọc trong dấu ngoặc {} còn được gọi là khối mã. Các câu lệnh phức hợp trong C có dạng.

 { <danh sách khai báo tùy chọn> <đanh sách câu lệnh tùy chọn> }

Khối mã được dùng như là phần thân của một hàm hay đưọc đặt bất kì ở vị trí nào mà một câu lệnh đơn giản có thể đặt. Nghĩa là, về ý nghĩa văn phạm thì câu lệnh đơn giản và câu lệnh phức hợp là tương đương nhau.

Các mệnh đề biểu thức

edit

Một câu lệnh (hay một mệnh đề) của C có dạng:

  <biểu thức tùy chọn>;

là một mệnh đề biểu thức. Nếu biểu thức này không có nội dung (mà chỉ còn lại dấu ; thì biểu thức được gọi là mệnh đề null (hay mệnh dề rỗng). (Theo ngôn ngữ máy Assembler thì mệnh đề null sẽ tương đương với câu lệnh NOP; chiếm 1 byte chỉ làm nhiệm vụ tăng địa chỉ của chồng (stack) lên 1 đơn vị.)



Các mệnh đề nhảy (hay bước nhảy)

edit

Các lệnh nhảy sẽ thay đổi dòng điều khiển một cách vô điều kiện. có 4 kiểu mệnh đề nhảy trong C là goto, continue, break, và return.

goto

edit

câu lệnh goto sẽ có dạng:

  goto <nhãn>;

nhãn phải có mặt trong hàm có chứa câu lệnh goto. Khi đọc đến lệnh này, dòng điều khiển sẽ chuyển đến mệnh đề nhãn.

continue

edit

Mệnh đề continue chỉ có thể xuất hiện trong một vòng lặp và có tác dụng làm cho dòng điều khiển chuyển sang chu kì mới của vòng lặp trong cùng nhất (có chứa câu lệnh). Các dạng sử dụng bao gồm

  while (expression) {
     /* ... */
     cont: ;
  }
  do {
     /* ... */
     cont: ;
  } while (expression);
  for (optional-expr; optexp2; optexp3) {
     /* ... */
     cont: ;
  }

break

edit

Mệnh đề break dùng để kết thúc một câu lệnh vòng lặp hay câu lệnh switch ngay lập tức và chuyển tiếp đến câu lệnh tiếp theo sau của vòng lặp đó.

return

edit

Một hàm trả dòng điều khiển về nơi gọi nó bằng câu lệnh return. Khi lệnh return được theo sau bởi một biểu thức thì biểu thức đó sẽ được đánh giá và giá trị này sẽ được trả về cho nơi đã gọi hàm. Khi return được gọi mà không có biểu thức đi kèm thì giá trị trả về là không xác định.