30/09/2018, 18:09

Hỏi bài tập trong bài Ngôn Ngữ C -24 của anh Đạt


---- Đoạn đầu anh có nói không dùng & với kiểu char đoạn cuối em thấy có biến “ki_tu” anh khai báo kiểu char nhưng vẫn dùng dấu & chưa hiểu đoạn này ạ.
---- Với cái khai báo " char ten[10] " 10 nghĩa là số kí tự phải ko ạ. ,mà sao em nhập là 1 rồi chạy vào cửa sổ console cho hơn 1 kí tự mà ko báo lỗi @@ ( đây là câu hỏi của 1 bn trong comment , và em cũng thắc mắc như bn này )

Ngo Dinh Quyen viết 20:11 ngày 30/09/2018

Cái này khi nào bạn học đến mảng 1 chiều và chuỗi kí tự(mảng 1 chiều các kí tự) thì sẽ hiểu thôi…

kirakira viết 20:12 ngày 30/09/2018

vậy khi nào dùng & khi nào ko dùng & với kiểu char ??? . còn cái char[10] la kieu tường ký tự sao khi mik thay = 1 va nhap chữ có 3 ký tự nó vẫn ko báo lỗi ???

kirakira viết 20:24 ngày 30/09/2018

theo mik nghĩ ngay chỗ dòng char[10] nên ghi là char[] , vì ngay chỗ printf nó lại in ra %s nên ko cần đặt số 10 vào thêm rối não @@!

Ngo Dinh Quyen viết 20:23 ngày 30/09/2018

Ý bạn là dòng code thứ 9 hả… scanf("%s", ten);
ten ở đây không phải là 1 kí tự mà là 1 “tập hợp các kí tự” hay còn gọi là mảng 1 chiều các kí tự( Anh Đạt có nói rõ mà).
Nếu là kí tự thì khi nhập bằng hàm scanf phải dùng toán tử &.
Nhưng nếu là mảng 1 chiều các kí tự thì khi nhập bằng hàm scanf, thì ta không dùng toán tử &.
Bản chất ra sao thì bạn học lên sẽ tự hiểu thôi…
Tóm lại bạn phải phân biệt giữa char a và char a[10].
char a là khai báo 1 kí tự riên lẻ
char a[10] là khai báo 1 mảng kí tự

Ngo Dinh Quyen viết 20:17 ngày 30/09/2018

Theo mình kiến thức của bạn không chắc từ đầu rồi, bạn nên ôn lại chứ cứ tiếp tục học lên cao thì không ổn đâu… Có gì không hiểu thì lên đây mọi người giúp

kirakira viết 20:21 ngày 30/09/2018

mik mới học cái lập trình C được 2 ngày ak . Trường mik chưa dạy , mik học trên mạng trước

Bài liên quan
0