Lập trình C/Cần gì trước khi học C

Tủ sách mở Wikibooks
Trước: Lịch sử Mục lục Tiếp theo: Sử dụng trình biên dịch

Yêu cầu kiến thức[sửa]

Mục đích của cuốn sách này là giới thiệu cho bạn về ngôn ngữ lập trình C. Cuốn sách không yêu cầu hiểu biết đặc biệt nào, nhưng giả định rằng người đọc có kiến thức cơ bản về máy tính.

Các phần mềm cần có[sửa]

Nếu bạn mới bắt đầu làm quen với công việc lập trình, sử dụng một môi trường phát triển tích hợp sẽ là một sự lựa chọn hợp lí. Tuy nhiên chúng ta hãy tìm hiểu cần tối thiểu những chương trình tối thiểu để có thể lập trình C. Đó là một trình soạn thảo văn bản (text editor) (không phải là trình xử lí văn bản - word processor) và một trình biên dịch (compiler).

Trình soạn thảo văn bản chỉ cho ra tệp văn bản thô (không có dữ liệu khác ngoài dữ liệu về văn bản) và sẽ được chúng ta sử dụng để viết mã nguồn của chương trình, còn các trình xử lí thường cho ra tệp có chứa thêm các dữ liệu khác (chẳng hạn dữ liệu chứa thông tin về quy cách định dạng) bên cạnh dữ liệu văn bản. Có rất nhiều trình soạn thảo văn bản. Một trong số đó (và có lẽ quen thuộc nhất với người Việt) là Notepad, ngoài ra còn có vi, vim hoặc Emacs... Tuy nhiên bạn nên dùng một trình soạn thảo văn bản có chức năng tô sáng cú pháp, vì nó sẽ giúp việc đọc mã nguồn (mã chương trình ở dạng ngôn ngữ lập trình bậc cao) trở nên dễ dàng hơn, cũng như dễ phát hiện các lỗi cú pháp.

Nếu bạn quyết định dùng một trình soạn thảo rời như ở trên, bạn sẽ cần một trình biên dịch C. Một trình biên dịch là một chương trình chuyển đổi mã nguồn thành mã máy (mã chương trình ở dạng mà máy có thể trực tiếp "hiểu" và thực hiện được). Thực tế thì trình biên dịch theo đúng nghĩa của nó chỉ xử lí một giai đoạn của quá trình trên mà chúng ta sẽ đề cập chi tiết sau.

Một số trình dịch C phổ biến:

Nền tảng Giấy phép Ghi chú
Trình phiên dịch Ch softintegration Windows, Linux, Mac OSX, FreeBSD, Solaris, AIX, QNX, HP-UX Phiên bản Standard Edition có thể dùng tự do cho mục đích thương mại Thân thiện cho người mới bắt đầu
OpenWatcom openwatcom DOS, Windows, Netware, OS/2 Nguồn mở
Trình dịch Borland C cppbuilder Windows Phần mềm tự do
Microsoft Visual Studio Express vstudio Windows Miễn phí Nhẹ, mạnh, là phiên bản thân thiện của một trình dịch tiêu chuẩn công nghiệp
Tiny C compiler tinycc GNU/Linux, Windows LGPL Nhỏ, nhanh, thân thiện với người mới
GNU Compiler Collection - GNU C Compiler gcc DOS, Cygwin (w32), MinGW (w32), OS/2, Mac OS X, Unix, GPL Phân phối kèm theo hầu hết các hệ thống UNIX


Một môi trường phát triển tích hợp (Intergrated Development Environment - IDE) là một bộ chương trình mà các nhà phát triển cần dùng, được kết hợp thành một gói, thường có giao diện đồ hoạ. Những chương trình này thường bao gồm trình soạn thảo, trình dịch, trình nối và trình gỡ lỗi.

Một số IDE phổ biến:

Nền tảng Giấy phép Ghi chú
CDT cdt Windows, Mac OS X, Unix Nguồn mở Trình cắm C/C++ cho Eclipse, một IDE nguồn mở phổ biến
Anjuta Anjuta Unix GPL IDE GTK+2 cho môi trường GNOME
Geany geany Đa nền tảng GPL IDE GTK+ dựa trên Scintilla
Little C Compiler] lcc Windows Miễn phí khi sử dụng phi thương mại
Xcode xcode Mac OS X Tự do Tải về sau khi đăng kí trả phí tại Apple Developer Connection hoặc với ai không có đăng kí Apple Developer Connection tại Mac App Store.
Pelles C Pelles C Windows, Pocket PC Tự do
Dev C++ Dev C++ Windows, Linux (phiên bản alpha) GPL
Microsoft Visual Studio Express Visual Studio Express Windows Miễn phí
Code::Blocks Code::Blocks Windows, Linux, Mac OS X GPL 3.0 Được xây dựng trên những yêu cầu phổ biến nhất của người dùng. Khả năng mở rộng lớn và cấu hình đầy đủ.

Trên hệ thống GNU/LINUX, GCC hầu như luôn luôn có sẵn.

Trên hệ thống Microsoft Windows, Dev-C++ rất đấng được quan tâm với người mới vì nó dễ dùng, miễn phí và dễ cài đặt. Lựa chọn thay thế là Microsoft Visual Studio Express và Code::Blocks, nhưng những chương trình này yêu cầu thiết lập một "dự án" trước khi bắt đầu.

Trên Mac OS X, Xcode cung cấp các trình dịch cần thiết để dịch nhiều tệp nguồn khác nhau. Việc cài đặt Xcode cài cả trình dịch với giao diện lệnh và IDE với giao diện đồ hoạ.

Trong các cuốn sách này, các ví dụ liên quan đến IDE được thực hiện trên Code::Blocks SVN 8086 kèm với bộ trình dịch MinGW 4.7.0 (Code::Blocks không đi kèm theo trình dịch). MinGW là một "bản chuyển đổi" dành cho Windows của bộ trình dịch GCC. Cách cài đặt các chương trình này có tại phụ lục

Trước: Lịch sử Mục lục Tiếp theo: Sử dụng trình biên dịch