Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 41 trang
THÔNG TIN TÀI LIỆU
Nội dung
LẬP TRÌNH C TRÊN LINUX Nội dung Ngơn ngữ C Minh họa Hello world trình biên dịch Thư viện liên kết Makefile Chương trình C Là tập hợp : Khai báo Định nghĩa Dành cho : Hàm, Biến, kiểu Dữ liệu Lập trình Linux Ngôn ngữ C hỗ trợ tốt cho lập trình Linux.Tuy nhiên khơng phải lựa chọn Có thể dùng Pascal , Assembler , Perl , Java , PHP, Python… Chương trình Linux tồn hai dạng : thực thi ( file binary) giống file *.exe DOS thông dịch (script) giống file *.bat Hai dạng file hốn đổi cho Để chay chương trình cần cấp quyền thực thi “x” Cài biến môi trường : $echo $PATH PATH = /bin:/user/bin:/user/local/bin: Cộng đồng mã nguồn mở GNU Cộng đồng GNU ( “Gnu is Not Unix”) xây dựng nhiều ứng dụng Unix (Linux) : Word proccessing, Office, Game, Multimedia, networking compiler , interpreter , programming languages… GNU – Phi lợi nhuận song cần tuân thủ số quy định quyền GNU - GPL (General Public License) – “copyleft”( thay cho “copyright”) GNU cung cấp biên dịch C/C++bao gồm : gcc trình biên dịch C g++ trình biên dịch C++ gdb Debug GNU make Trình quản lý mã nguồn trợ giúp biên dịch bash shell Lập trình C Fedora – điều kiện cần công cụ cần thiết để viết lập trình ngơn ngữ C : Trình soạn thảo ( text editor) : vi, gedit, emacs $yum install emacs ( quyền super user) biên dịch ( compiler) : GNU Compiler Collection (GCC), CC : đưa mã đối tượng Trình $ gcc $ which gcc Thư $ viện chuẩn C ( C standard library) : glibc locate glibc "Hello, World!"Source Code #include main() { /* Xuat man hinh cau chao*/ printf("Hello, world!\n"); return 0; } Compile hello.c Biên dịch chương trình hello.c gcc : $gcc hello.c $ ls hello.c a.out $./hello Hoặc $ gcc hello.c –o hello # tùy chọn -o $ls $./hello Phân tích "Hello, World!" Dịng ngơn ngữ C : preprossesor directive bắt đầu dấu # khai báo thư viện Hàm main () Dấu ; #include main() { /* Xuat man hinh cau chao*/ printf("Hello, world!\n"); return 0; } #include main(){printf("Hello, world!\n");} Quá trình biên dịch Quá trình biên dịch gcc trải qua bước sau: Tiền xử lý (preprocessing) $gcc -E hello.c > hello.i Biên dịch sang hợp ngữ(compiling) $gcc -S hello.i Chuyển hợp ngữ sang mã máy (assembling) $gcc -c hello.s Thiết lập liên kết (linking) $gcc hello.o preprocessing Hello.c compiling Hello.i assembling Hello.s linking Hello.o a.out