Lập trình C: Hello World

Posted by huylvt on January 30, 2016

Tôi dự định học C trong năm 2015, tuy nhiên đến hôm nay mới có thể bắt đầu. Một phần vì công việc ở công ty quá nhiều, một phần vì cách quản lý thời gian của tôi không tốt. Có lẽ tôi nên tự trách mình vì đã không biết cách sắp xếp thời gian cho hợp lý. Chỉ có một cách để học một ngôn ngữ lập trình mới đó là viết chương trình bằng ngôn ngữ đó. Nếu muốn học PHP bạn phải viết chương trình bằng PHP, muốn học Python bạn phải viết chương trình bằng Python, muốn học Java bạn phải viết chương trình bằng Java, dĩ nhiên muốn học C thì phải viết chương trình bằng C. Trong loạt bài này, tôi sử dụng hệ điều hành Ubuntu 15.04 x86_64 và các phần mềm sau:

  • gcc
  • vim

Chương trình đầu tiên để bắt đầu với mọi ngôn ngữ thường là chương trình in ra dòng chữ “Hello World!”. Trong C, chương trình in ra dòng chữ “Hello World!” như sau:

#include <stdio.h>

int main () {
    // My first program!
    printf("Hello World!\n");
    return 0;
}

Bạn lưu chương trình này với tên hello.c và biên dịch chương trình bằng lệnh sau:

$ gcc -o hello hello.c

Khi chạy chương trình chúng ta sẽ nhận được dòng chữ Hello World!

$ ./hello
Hello World!

Một chương trình trong C thường gồm các phần sau: Các chỉ thị tiền xử lý, Hàm, Biến, Các câu lệnh và biểu thức, Chú thích.

Trong chương trình hello phía trên của chúng ta thì:

  • Dòng đầu tiên #include <stdio.h> là một chỉ thị tiền xử lý. Các chỉ thị tiền xử lý này không phải là một phần của trình biên dịch. Nó là mộ bước của quá trình biên dịch. Nó chỉ dẫn cho trình biên dịch biết cần phải làm những gì trước khi bắt đầu qúa trình biên dịch thực sự.
  • Dòng tiếp theo int main(), đây là hàm trong C, mọi chương trình viết bằng C bắt buộc phải có 1 hàm main() duy nhất. Trình biên dịch sẽ bắt đầu quá trình biên dịch từ hàm main() này.
  • // My first program! đây là dòng chú thích. Trong C thì các chú thích sẽ được trình biên dịch bỏ qua. Nó có tác dụng làm cho người đọc dễ hiểu hơn về chương trình của bạn.
  • printf(“Hello World!\n”); là một hàm có sẵn trong C. Hàm này có tác dụng in ra dòng chữ Hello World! ra màn hình như các bạn đã biết.
  • return 0; lệnh này để kết thúc chương trình và trả về giá trị 0.

Như các bạn thấy chương trình hello của chúng ta chưa có biến. Bài tiếp theo tôi sẽ viết về biến và biểu thức số học trong C.