khai báo biến trong c

Ngôn ngữ lập trình C có một hệ thống mở rộng cho việc khai báo các biến của các kiểu khác nhau. Những qui tắc dành cho các kiểu phức tạp có thể gây nhầm lẫn tùy theo các kiểu thiết kế của chúng. Bài này nói về các khai báo biến, bắt đầu từ các kiểu đơn giản, và dẫn tới các kiểu phức tạp hơn. Trong ngôn ngữ lập trình C, bạn phải khai báo biến trước khi sử dụng. Quy tắc đặt tên biến trong C. Tên biến có thể chứa chữ cái (in hoa và in thường), chữ số và đường gạch chân. Chữ cái đầu tiên của biến nên chứa một chữ cái hoặc một đường gạch chân. Tuy Nhiệt độ thấp nhất: 21-24 độ C. Nhiệt độ cao nhất: 27-30 độ C. Tin tức thời tiết Tây Nguyên hôm nay. Dự báo thời tiết ngày 20/10 tại khu vực này sẽ có mây, ngày nắng, đêm có mưa rào và dông vài nơi; riêng phía Nam chiều tối có mưa rào rải rác và có nơi có dông. Gió nhẹ. H5 Ffcredit. Biến số và hằng số trong C Biến là đại lượng dùng để lưu trữ giá trị do người lập trình định nghĩa, biến có thể thay đổi được các giá trị trong quá trình lập trình. Khai báo biến ; Trong đó được chấp nhận khi là ký tự chữ thường hoặc chữ in hoa hoặc các chữ số, không bắt đầu bằng các ký tự đặc biệt hoặc là chữ số. include int main{ //kieu du lieu va ten cac bien int i, j, k; char c, ch; float s, l; bool t,f; return 0; } Ngoài ra ta có thể khai báo biến và gán trực tiếp dữ liệu vào biến đó = ; Ví dụ dưới đây gán trực tiếp các giá trị cho các biến và sử dụng hàm printf để hiển thị giá trị ra màn hình. include int main{ //gan truc tiep cac bien voi cac du lieu int i = 123; char c = 'n'; float f = bool t = true; // hien thi du lieu cua bien ra man hinh printf"Bien i = %d\n",i; printf"Bien c = %c\n",c; printf"Bien f = %f\n",f; printf"Bien t = %d",t; return 0; } Bien i = 123 Bien c = n Bien f = Bien t = 1 số Hằng được dùng để định nghĩa một giá trị không đổi, hằng có thể là một đại lượng được C định nghĩa sẵn hoặc có thể do người lập trình định nghĩa nhưng nó không thể được thay đổi trong quá trình lập trình. Khai báo hằng const = ; Ví dụ dưới đây sẽ khai báo hằng số pi có giá trị là và hằng số exp có giá trị là sau đó hiển thị giá trị này ra màn hình include int main{ //khai bao hang const float pi = const float exp = // hien thi du lieu cua hang so pi va e printf"pi = %f\n",pi; printf"e = %f\n",exp; return 0; } pi = e = Giả sử sau khi ta đã khai báo 2 hằng số pi = và exp = Tôi sẽ thử thay đổi lại giá trị cho chúng lần lượt là pi = 3 và exp = 2 kết quả khi thực thi chương trình sẽ là include int main{ //khai bao hang const float pi = const float exp = //thay doi gia tri cua hang pi = 3; exp = 2; // hien thi du lieu cua hang so pi va e printf"pi = %f\n",pi; printf"e = %f\n",exp; return 0; } Như vậy, khi ta thay đổi giá trị cho hằng số trong quá trình biên dịch được thực thi chương trình của ta lập tức có lỗi assignment of read-only variable pi’ và assignment of read-only variable exp’. Bài viết đăng tại dẫn cách khai báo và gọi hàm trong C. Bạn sẽ học được cách khai báo hàm trong C, cũng như cách gọi hàm trong C đã được khai báo sau bài học báo hàm trong CTrong bài viết Hàm trong C bạn đã biết có 3 loại hàm trong C, trong đó có một loại hàm mà chúng ta có thể tự tạo hàm để sử dụng trong chương trình, đó chính là hàm C do người dùng định muốn sử dụng một hàm C do người dùng định nghĩa, trước hết chúng ta cần khai báo hàm trong ta viết kiểu dữ liệu trả về từ hàm trước, sau đó đến tên hàm, rồi kiểu và tên của các tham số sử dụng trong hàm, và cuối cùng là các xử lý trong hàm nằm giữa cặp ngoặc nhọn {} cùng với giá trị trả về, với cú pháp hàm như saukiểu-trả-về tên-hàm kiểu-1 tham-số-1 , kiểu-2 tham-số-2 , ...{ Câu lệnh 1 trong hàm; Câu lệnh 2 trong hàm; ... return giá-trị-trả-về ;}Trong đókiểu trả về là kiểu dữ liệu của giá trị trả về từ hàm, ví dụ như int, char. Nếu hàm không trả về giá trị thì chúng ta cần chỉ định kiểu [void] để thay hàm là một chuỗi ký tự dùng để đặt tên đại diện cho số là các biến sử dụng trong khai báo hàm, cũng như để nhận đối số các giá trị truyền vào khi chúng ta gọi là từ khóa dùng để trả giá trị trả về từ hàm trong Cgiá trị trả về là các đối tượng được trả về sau khi hàm được thực thi. Ví dụ như hàm có thể trả về một số, một chuỗi, hoặc một con trỏ dụ, chúng ta khai báo một hàm tính tổng hai số và trả về kết quả trong chương trình như sauint find_sumint a,int b{ int sum = a + b; return sum;}Lại nữa, nếu một hàm không cần nhận giá trị truyền vào từ bên ngoài thì chúng ta cũng có thể lược bỏ tham số khi khai báo hàm trong C như saukiểu-trả-về tên-hàm { Câu lệnh 1 trong hàm; Câu lệnh 2 trong hàm; ... return giá-trị-trả-về ;}Như ở ví dụ sau đây, chúng ta không sử dụng tham số khi khai báo hàmint find_sum{ int sum = 1 + 2; return sum;}Ngoài cách viết này, chúng ta cũng có thể chỉ định void bên trong đối số của hàm, nhằm biểu thị việc không có giá trị truyền vào hàm. Ví dụint find_sumvoid{ int sum = 1 + 2; return sum;}Cuối cùng, return là lệnh dùng để trả về giá trị trong C, và hàm chứa lệnh return được gọi là hàm trả về giá trị trong C. Tuy nhiên nếu trong trường hợp không có giá trị nào cần trả về từ hàm thì chúng ta cũng có thể bỏ qua lệnh ý là khi đó, chúng ta cũng cần thay thế kiểu giá trị trả về thành kiểu void nhằm biểu thị rõ một hàm không trả về giá trị. Ví dụ cụ thểvoid say_hi{ printf"Hi!";}Bạn có thể tìm hiểu thêm về void trong C tại bài viết sauXem thêm Void trong cGọi hàm trong CSau khi khai báo hàm trong C, chúng ta có thể sử dụng hàm đó nhiều lần trong chương trình bằng cách gọi hàm trong C với cú pháp sau đâytên-hàm đối-số-1 , đối-số-2 ,...;Chúng ta viết tên hàm, sau đó đặt các đối số các giá trị truyền vào khi gọi hàm ở giữa cặp dấu ngoặc đơn và cách nhau bởi dấu phẩy ,. Các giá trị của đối số sẽ được dùng để truyền tham số trong dụ, chúng ta khai báo và gọi hàm trong C như sauinclude int find_sumint a,int b{ int sum = a + b; return sum;} int mainvoid{ find_sum1,2; find_sum5,6; return 0;}Lưu ý, chúng ta gọi các biến dùng để khai báo hàm là tham số, còn các giá trị thực truyền vào khi gọi hàm là đối số. Giá trị của các đối số sẽ được các tham số tương ứng nhận và thực hiện các xử lý ở bên trong các tham số bên trong hàm nhận các đối số từ bên ngoài hàm được gọi là truyền tham số trong C. Chi tiết về tham số và đối số trong C bạn có thể xem tại bài viết Hàm trong CSau khi gọi hàm trong C, một giá trị là kết quả của hàm sẽ được trả về. Giá trị trả về từ hàm có thể được gán vào biến để sử dụng như sauinclude int find_sumint a,int b{ int sum = a + b; return sum;} int mainvoid{ int ketqua = find_sum1,2; printf"%d",ketqua; return 0;}Trong trường hợp trong hàm được khai báo không chứa tham số, chúng ta cũng không thể truyền tham số vào hàm được. Khi đó chúng ta sẽ chỉ gọi hàm trong C bằng cách lược bỏ đối số đi như sautên-hàm;Ví dụinclude void say_hi{ printf"Hi!";}int mainvoid{ say_hi; return 0;}Lưu ý cuối cùng khi gọi hàm trong C, nếu như bạn gọi một hàm mà hàm đó vốn chưa được khai báo, lỗi implicit declaration of function sau đây sẽ xảy rasay_hello;>>warning implicit declaration of function say_hello’ [-Wimplicit-function-declaration]Tổng kếtTrên đây Kiyoshi đã hướng dẫn bạn về cách khai báo và gọi hàm trong C rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay hãy cùng tìm hiểu những kiến thức sâu hơn về C trong các bài học tiếp Link chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!HOME › lập trình c cơ bản dành cho người mới học lập trình>>10. hàm trong cBài sauHàm trong CBài tiếpReturn trong C Bài viết đăng tại sử dụng biến trong C, chúng ta cần phải khai báo biến và sau đó gán giá trị vào biến đó. Tuy nhiên chúng ta cũng có thể thực hiện đồng thời việc khai báo và gán giá trị ban đầu trong biến chỉ trong một xử lý, và chúng ta gọi đó là khởi tạo biến trong C. Trong bài này chúng ta sẽ cùng tìm hiểu về cách khởi tạo biến, vị trí khởi tạo biến trong chương trình, cũng như sự khác nhau giữa khởi tạo và khai báo biến trong C tạo biến trong CKhởi tạo biến trong C là xử lý khai báo biến đồng thời với việc gán giá trị ban đầu cho biến đó. Để khởi tạo biến trong C, chúng ta viết kiểu dữ liệu, tên biến cũng như là giá trị ban đầu của biến đó như sautype name = value;Trong đótype là kiểu dữ liệu của biến, có thể là int, char hoặc float mà bạn đã học trong bài Kiểu dữ liệu trong Cname là tên biến được đặt theo Quy tắc đặt tên biến trong C mà bạn đã học trong bài Biến trong C là là giá trị của biến. Lưu ý là giá trị này không nhất thiết phải thuộc kiểu dữ liệu tupe được chỉ định, nhưng chúng ta nên sử dụng giá trị thuộc kiểu dữ liệu các trường hợp mà chúng ta đã biết trước giá trị cần gán vào biến, thì chúng ta nên khởi tạo nó khi khai báo biến càng sớm càng tốt. Nếu bạn vô tình cố gắng lấy một giá trị từ biến trước khi nó được khởi tạo giá trị đầu tiên, bạn sẽ không biết mình sẽ lấy phải giá trị nào từ biến đó, và rất dễ xảy ra lỗi trong chương trình. Việc khởi tạo giá trị đầu tiên cho biến khi đã biết giá trị của nó sẽ giúp chúng ta phòng tránh những lỗi trong chương trình từ trong trứng dụ, chúng ta khởi tạo các biến thuộc các kiểu dữ liệu khác nhau trong C như sauint num1 = 1;float num2 = txt = 'a';char str[] = "Vietnam";Lưu ý là khi khởi tạo biến, mặc dù chúng ta có thể sử dụng giá trị có kiểu khác với kiểu chỉ định, lỗi chương trình không xảy ra và biến khởi tạo sẽ tự động chọn kiểu dữ liệu có độ chính xác cao hơn, tuy nhiên thì chúng ta NÊN chỉ định giá trị chính xác với kiểu giá trị chỉ định. Điều này sẽ giúp chính chúng ta trong việc xác định kiểu dữ liệu trong biến, và sử dụng chúng chính xác với các yêu cầu trong xử lý chương tạo đồng loạt biến trong CĐể khởi tạo biến trong C chúng ta sẽ ghi kiểu dữ liệu, tên cũng như là giá trị của biến. Tuy nhiên trong trường hợp nhiều biến có cùng một kiểu dữ liệu, thì chúng ta có thể khởi tạo chúng cùng lúc với cú pháp sau đâyCú phápCú pháp chúng ta sử dụng để khởi tạo đồng loạt các biến có cùng kiểu trong C như sautype name1 = value1, name2 = value2, name3 = value;Chúng ta viết kiểu biến lên đầu, sau đó ghi tên các cặp biến-giá trị cách nhau bởi một dấu phẩy như trênVí dụ cụ thể, chúng ta khởi tạo 3 biến thuộc kiểu int có cùng giá trị như sauint x=10, y=20, z = 30;Lưu ý cách viết sai khi khởi tạo đồng loạt các biến có cùng kiểu và cùng giá trị trong CTrong trường hợp khởi tạo nhiều biến có cùng kiểu dữ liệu lẫn giá trị ban đầu, các bạn lưu ý cách viết sau đây là saiint x,y,z = 10; Với cách viết này, thực chất chỉ có biến z là được khởi tạo giá trị ban đầu bằng 10, trong khi 2 biến x và y thì lại không được gán giá trị kiểm tra khi in chúng ra màn hình như sauinclude int mainvoid{ int x,y,z = 10; printf"x = %d\n", x; printf"y = %d\n", y; printf"z = %d\n", z; return 0;}Bạn có thể thấy chỉ có z được khởi tạo giá trị ban đầu bằng 10, trong khi 2 biến còn lại là x và y thì ta cần phải viết lại bằng một trong 2 cách khởi tạo sau đâyint x = 10, y=10, z = 10;Hoặc làint x = 10;int y = 10;int z = 10;Vị trí khởi tạo biến trong CCũng tương tự như khi khai báo biến thì do trong chương trình C, nếu một biến chưa được khởi tạo mà đem ra sử dụng thì sẽ bị xảy ra lỗi, nên vị trí khởi tạo biến trong chương trình C cũng sẽ là ở phía trên xử lý dùng tới biến nhiên để dễ quản lý code thì thông thường thì chúng ta sẽ khởi tạo toàn bộ các biến sử dụng trong chương trình ở phần đầu mã nguồn như sauinclude int mainvoid{ int width = 100, height = 80; printf"width = %d\n", width; printf"height = %d\n", height; return 0;}Sự khác biệt giữa khởi tạo và khai báo biến trong CCả khởi tạo và khai báo biến đều có tác dụng tạo ra một biến để sử dụng trong chương trình sự khác biệt giữa khởi tạo và khai báo biến trong C là như thế nào? Câu trả lời làKhai báo biến là để giới thiệu cho chương trình biến một biến sẽ sử dụng có tên thế nào và kiểu dữ liệu ra sao. Tuy nhiên trong khai báo biến sẽ không bao gồm việc gán giá trị đầu tiên cho biến tạo biến ngoài việc giới thiệu cho chương trình biến một biến sẽ sử dụng có tên thế nào và kiểu dữ liệu ra sao, thì còn bao gồm luôn cả việc gán giá trị đầu tiên cho biến khi nào thì nên dùng khai báo biến, và khi nào thì nên dùng khởi tạo biến trong C? Câu trả lời phụ thuộc vào việc chúng ta đã biết giá trị đầu tiên gán vào biến đó hay chưa. Nếu đã biết giá trị gán vào biến, hãy dùng khởi tạo biến. Nếu chưa, hãy dùng khai báo biến trong kếtTrên đây Kiyoshi đã hướng dẫn bạn cách khởi tạo biến trong C rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay hãy cùng tìm hiểu những kiến thức sâu hơn về C trong các bài học tiếp Link chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!HOME › lập trình c cơ bản dành cho người mới học lập trình>>07. biến trong cBài sauKhai báo biến trong CBài tiếpGán biến trong C

khai báo biến trong c