Khởi tạo các xâu kí tự.
Vì những xâu kí tự là những mảng bình thường nên chúng cũng như các mảng
khác. Ví dụ, nếu chúng ta muốn khởi tạo một xâu kí tự với những giá trị xác
định chúng ta có thể làm điều đó tương tự như với các mảng khác:
char mystring[] = { H , e , l , l , o , \0 };
Tuy nhiên, chúng ta có thể khởi tạo giá trị cho một xâu kí tự bằng cách khác: sử
dụng các hằng xâu kí tự.
Trong các biểu thức chúng ta đã sử dụng trong các ví dụ trong các chương trước
các hằng xâu kí tự để xuất hiện vài lần. Chúng được biểu diễn trong cặp ngoặc
kép (
"
), ví dụ:
"the result is: "
là một hằng xâu kí tự chúng ta sử dụng ở một số chỗ.
Không giống như dấu nháy đơn () cho phép biểu diễn hằng kí tự, cặp ngoặc kép
(
"
) là hằng biểu diễn một chuỗi kí tự liên tiếp, và ở cuối chuỗi một kí tự null (
\0
) luôn được tự động thêm vào.
Vì vậy chúng ta có thể khởi tạo xâu
mystring
theo một trong hai cách sau đây:
char mystring [] = { H , e , l , l , o , \0 };
char mystring [] = "Hello";
Trong cả hai trường hợp mảng (hay xâu kí tự)
mystring
được khai báo với kích
thước 6 kí tự: 5 kí tự biểu diễn
Hello
cộng với một kí tự null.
Trước khi tiếp tục, tôi cần phải nhắc nhở bạn rằng việc gán nhiều hằng như việc
sử dụng dấu ngoặc kép (
"
) chỉ hợp lệ khi khởi tạo mảng, tức là lúc khai báo
mảng. Các biểu thức trong chương trình như:
mystring = "Hello";
mystring[] = "Hello";
là không hợp lệ, cả câu lệnh dưới đây cũng vậy: