Exercise 1 Lập Trình C – Learn C The Hard Way


Exercise 1: Dust Off That Compiler

Đây có thể được xem là ví dụ đầu tiên trong loạt bài học lập trình C này. Ví dụ này quá phổ biến rồi. Vì vậy mục đích của bài này là hướng dẫn cho các bạn cách biên dịch một file .C trên môi trường linux. Nó không giống như chúng ta bấm nút “run” trên các IDE.

Vào bài nhé! Các bạn mở một trình soạn thảo lên, các bạn có thể dùng các trình soạn thảo có sẵn trong linux như vi, gedit,… hoặc các bạn có thể cài thêm các trình khác, ví dụ sublime text… (mình xài sublime text).

Và đây là đoạn code, các bạn tạo và lưu lại với tên ex1.c nhé:

int main(int argc, char *argv[])
{
    puts("Hello world");
    return 0;
}

À, mình khuyên các bạn không được copy code rồi dán nha. Tất cả code phải được gõ bằng tay hết. Các bạn phải thực hiện nó.
Sau khi tạo file ex1.c xong. Các bạn thực hiện lệnh sau để biên dịch chương trình (tạo ra file ex1):

make ex1

Sau khi biên dịch thành công, các bạn sẽ thấy một dòng warning…. Đừng lo lắng, các bạn đang làm đúng.Và nếu các bạn có lỗi, thì hãy quay lại đoạn code và sửa lại nhé!
Bây giờ thì chạy file ex1:

./ex1

Các bạn có thấy terminal hiện lên dòng “Hello world.” không?
Bây giờ là tới phần xử lý cảnh báo, các bạn chỉ cần thêm thư viện stdio.h vào thôi, vì hàm puts() được khai báo trong thư viện này, nhưng khi không có, trình biên dịch c (gcc) đủ thông minh để hiểu được và khai báo ngầm cho nó.
Sửa lai đoạn code nhé:

#include <stdio.h>
int main(int argc, char *argv[])
{
    puts("Hello world");
    return 0;
}

Bây giờ các bạn thực hiện biên dịch và chạy lại để thấy kết quả.

Tham khảo:

Exercise 0 Lập Trình C

Đây là video clip mình làm để thực hành cho bài này, các bạn có thể xem thêm:

End

Advertisements

16 thoughts on “Exercise 1 Lập Trình C – Learn C The Hard Way

    1. Như bạn thấy lệnh make ex1 dùng để biên dịch đó (nó thực ra là lệnh gcc …). Trình biên dịch là gcc, thực hiện biên dịch bằng lệnh thôi bạn 🙂

      Like

  1. Cái này là mình lập trình ngôn ngữ C trên hệ điều hành linux hả bạn?
    Sao không thực hiện trên windows. Mình đã học qua ngôn ngữ c toàn viết trên Dev C à.

    Like

    1. Đúng rồi bạn. Lập trình trên Windows thì đâu nói làm gì bạn. Ai cũng có thể làm được. Windows là vũ trụ thứ 6 thì linux là vũ trự thế 7. :)))

      Like

  2. Cho em hỏi, nếu tạo xong file ex1 rồi thì sao ạ. Có làm được gì trong file đó ko?
    Vì em học lập trình C và lập trình game nên em phải nghiên cứu cho buổi học đầu tiên. Em học ở Sài Gòn. Em 11 tuổi.
    Cám ơn ạ!

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s