tek4

“[Lập trình C từ 0 đến 1] Bài 5. Cấu trúc chương trình C, một chương trình C tối thiểu cần gì?”

by - September. 21, 2021
Kiến thức
Học
<p>B&agrave;i viết &ldquo;[Lập tr&igrave;nh C từ 0 đến 1] B&agrave;i 5. Cấu tr&uacute;c chương tr&igrave;nh C, một chương tr&igrave;nh C tối thiểu cần g&igrave;?&rdquo; l&agrave; b&agrave;i viết tiếp theo nằm trong series hướng dẫn học lập tr&igrave;nh C của <a href="https://tek4.vn/" target="_blank" rel="noopener">tek4.vn</a>.</p> <p>Độc giả c&oacute; thể tham khảo c&aacute;c b&agrave;i viết kh&aacute;c trong series b&agrave;i viết n&agrave;y&nbsp;<a href="https://tek4.vn/lap-trinh-c-co-ban-den-nang-cao/" target="_blank" rel="noopener">tại đ&acirc;y</a></p> <p>B&agrave;i viết n&agrave;y sẽ cung cấp đến độc giả những kh&aacute;i niệm vấn đề cơ bản nhất để lập tr&igrave;nh v&agrave; bi&ecirc;n dịch thực thi một chương tr&igrave;nh C trong m&aacute;y t&iacute;nh. Trong loạt b&agrave;i hướng dẫn [Lập tr&igrave;nh C từ 0 đến 1], IDE được sử dụng l&agrave; Code::Blocks</p> <h1>1.&nbsp;&nbsp;&nbsp; Những thứ cần để lập tr&igrave;nh C</h1> <p>Để lập tr&igrave;nh C cần &iacute;t nhất một m&aacute;y t&iacute;nh c&oacute; hệ điều h&agrave;nh, một tr&igrave;nh soạn thảo để soạn thảo code v&agrave; một bộ compiler c&ugrave;ng một đầu &oacute;c đầy &yacute; tưởng nh&eacute;.</p> <ul> <li>M&aacute;y t&iacute;nh hệ điều h&agrave;nh</li> </ul> <p>Chương tr&igrave;nh C rất nhẹ, tuy nhi&ecirc;n cũng cần một m&aacute;y t&iacute;nh cấu h&igrave;nh tương đương một t&iacute; để qu&aacute; tr&igrave;nh lập tr&igrave;nh mượt m&agrave; hơn.</p> <p>Dưới đ&acirc;y l&agrave; bộ cấu h&igrave;nh đề nghị v&agrave; thực hiện kh&oacute;a học n&agrave;y:</p> <table style="width: 37.2035%;"> <tbody> <tr> <td style="width: 28.1162%;" width="162">Cấu h&igrave;nh đề nghị</td> <td style="width: 137.272%;" width="138">Th&ocirc;ng số</td> </tr> <tr> <td style="width: 28.1162%;" width="162">CPU</td> <td style="width: 137.272%;" width="138">&gt;1.1GHz Tốc độ CPU tối thiểu l&agrave; 1.1GHz</td> </tr> <tr> <td style="width: 28.1162%;" width="162">Ram</td> <td style="width: 137.272%;" width="138">&gt;4GB</td> </tr> <tr> <td style="width: 28.1162%;" width="162">Ổ cứng</td> <td style="width: 137.272%;" width="138">Ưu ti&ecirc;n ổ cứng SSD</td> </tr> <tr> <td style="width: 28.1162%;" width="162">OS</td> <td style="width: 137.272%;" width="138">Windows 7 trở l&ecirc;n</td> </tr> </tbody> </table> <ul> <li>Tr&igrave;nh soạn thảo</li> </ul> <p>C&oacute; rất nhiều tr&igrave;nh soạn thảo để lập tr&igrave;nh C như Borland C, Turbo C, DevC++, VisualStudioCode, VisualStudio, Netbeans, Eclipse, SublimeText, Notepad ++, &hellip; Tuy nhi&ecirc;n trong xuy&ecirc;n suốt kh&oacute;a học ch&uacute;ng ta sử dụng bộ IDE Code::Blocks</p> <ul> <li>Compiler</li> </ul> <p><img class="aligncenter" src="https://tek4.vn/wp-content/uploads/2020/10/Screen-Shot-2020-10-21-at-11.21.14-PM.png" /><br />Ng&ocirc;n ngữ C l&agrave; ng&ocirc;n ngữ lập tr&igrave;nh bậc cao, tuy nhi&ecirc;n m&aacute;y t&iacute;nh chỉ hiểu ng&ocirc;n ngữ bậc thấp (m&atilde; m&aacute;y). Do đ&oacute; cần một bộ compiler( tr&igrave;nh bi&ecirc;n dịch) để bi&ecirc;n dịch từ ng&ocirc;n ngữ bậc cao sang m&atilde; m&aacute;y để m&aacute;y t&iacute;nh đem kết hợp với c&aacute;c tệp m&atilde; kh&aacute;c v&agrave; đ&oacute;ng g&oacute;i c&aacute;c định dạng file theo hệ điều h&agrave;nh tương ứng v&agrave; tiến h&agrave;nh thực thi chương tr&igrave;nh.</p> <p>&nbsp;</p> <h1>2.&nbsp;&nbsp;&nbsp; Cấu tr&uacute;c một chương tr&igrave;nh C</h1> <p>Để ph&acirc;n t&iacute;ch cấu tr&uacute;c một chương tr&igrave;nh C ch&uacute;ng ta tiến h&agrave;nh b&oacute;c t&aacute;ch một đoạn code sau:</p> <pre class="lang:default decode:true EnlighterJSRAW ">/*Code by 3IEv3n */ #include &lt;stdio.h&gt; void main(){ printf("Tek4.vn xin chao cac ban den voi khoa hoc C tu co ban den nang cao"); }</pre> <p>Ta tiến h&agrave;nh ph&acirc;n t&iacute;ch chương tr&igrave;nh.</p> <ol> <li>D&ograve;ng đầu ti&ecirc;n được đ&aacute;nh dấu l&agrave; lời ch&uacute; th&iacute;ch n&ecirc;n sẽ được tr&igrave;nh bi&ecirc;n dịch bỏ qua khi chạy chương tr&igrave;nh</li> <li>D&ograve;ng thứ hai của chương tr&igrave;nh #include &lt;stdio.h&gt; l&agrave; lệnh tiền xử l&yacute;, nhắc nhở bộ bi&ecirc;n dịch C th&ecirc;m tệp stdio.h trước khi bi&ecirc;n dịch.</li> <li>D&ograve;ng tiếp theo void main() l&agrave; h&agrave;m main, nơi chương tr&igrave;nh bắt đầu.</li> <li>D&ograve;ng tiếp theo printf(...) l&agrave; một h&agrave;m chức năng kh&aacute;c của ng&ocirc;n ngữ C , in ra th&ocirc;ng điệp " Tek4.vn xin ch&agrave;o bạn đến với kh&oacute;a học C từ cơ bản đ&ecirc;n n&acirc;ng cao&rdquo; hiển thị tr&ecirc;n m&agrave;n h&igrave;nh. H&agrave;m n&agrave;y nằm trong bộ thư viện &ldquo;stdio.h&rdquo; được khai b&aacute;o ở đầu chương tr&igrave;nh</li> <li>To&agrave;n bộ h&agrave;m main() được đ&oacute;ng g&oacute;i trong { }, hai dấu n&agrave;y cũng l&agrave; đ&aacute;nh dấu bắt đầu v&agrave; kết th&uacute;c của một đoạn chương tr&igrave;nh</li> </ol> <p>&nbsp;</p> <p><strong>Bi&ecirc;n dịch &amp; Thực thi Chương tr&igrave;nh C tr&ecirc;n</strong></p> <p>1. T&igrave;m đến thanh taskbar v&agrave; sử dụng c&aacute;c n&uacute;t lệnh sau để bi&ecirc;n dịch chương tr&igrave;nh trong Code::Blocks</p> <p><img class="wp-image-7497 aligncenter" src="https://tek4.vn/wp-content/uploads/2021/01/compiler.png" alt="" width="223" height="78" /></p> <p>2. Sau đ&oacute; đ&acirc;y l&agrave; kết quả chương tr&igrave;nh ch&uacute;ng ta đạt được</p> <p><img class="wp-image-7498 aligncenter" src="https://tek4.vn/wp-content/uploads/2021/01/ketqua.png" alt="" width="615" height="105" /></p> <ol start="3"> <li>Tiến h&agrave;nh kiểm tra lại thư mục hiện h&agrave;nh của tệp chương tr&igrave;nh</li> </ol> <p><img class="wp-image-7499 size-full aligncenter" src="https://tek4.vn/wp-content/uploads/2021/01/ketqua2.png" alt="" width="619" height="79" /></p> <p>Ta thấy xuất hiện th&ecirc;m hai tập tin .o v&agrave; .exe l&agrave; kết quả của tr&igrave;nh bi&ecirc;n dịch đ&atilde; bi&ecirc;n dịch th&agrave;nh c&ocirc;ng</p> <h1>Vậy một chương tr&igrave;nh C cần g&igrave;?</h1> <p><img class="wp-image-7500 size-full aligncenter" src="https://tek4.vn/wp-content/uploads/2021/01/manguon-2.png" alt="" width="656" height="271" /></p> <ul> <li>C&aacute;c lệnh tiền xử l&yacute; bao gồm c&aacute;c thư viện d&ugrave;ng trong chương tr&igrave;nh, c&aacute;c hằng được d&ugrave;ng trong chương tr&igrave;nh</li> <li>C&aacute;c h&agrave;m được soạn thảo hoặc sử dụng trong chương tr&igrave;nh hoặc &iacute;t nhất l&agrave; h&agrave;m main()</li> <li>C&aacute;c biến được sử dụng trong chương tr&igrave;nh</li> <li>C&aacute;c lệnh code C v&agrave; biểu thức C</li> <li>C&aacute;c lời ch&uacute; th&iacute;ch để ch&uacute; th&iacute;ch hoặc giải nghĩa một d&ograve;ng lệnh, một đoạn chương tr&igrave;nh n&agrave;o đ&oacute;</li> </ul> <p>Ch&uacute;ng ta sẽ kết th&uacute;c &ldquo;B&agrave;i 5. Cấu tr&uacute;c chương tr&igrave;nh C, một chương tr&igrave;nh C tối thiểu cần g&igrave;?&rdquo; trong series [Lập tr&igrave;nh C từ 0 đến 1] ở đ&acirc;y. H&atilde;y c&ugrave;ng đ&oacute;n xem &ldquo;B&agrave;i 6. Kiểu dữ liệu trong C v&agrave; kiến tr&uacute;c bộ nhớ&rdquo;.</p> <p>H&atilde;y để lại b&igrave;nh luận v&agrave; theo d&otilde;i series b&agrave;i viết: &ldquo;<a href="https://tek4.vn/tu-khoa/lap-trinh-c-tu-0-den-1/">Lập tr&igrave;nh C từ 0 đến 1</a>&rdquo; để tiếp tục cập nhật những th&ocirc;ng tin mới nhất.</p>