Mình mới học C và tự học nên có 1 số "thắc mắc ko biết hỏi ai" mong chỉ giáo.
kiểu char lưu được 1 byte, nhưng sao có thể lưu đc 1 chuỗi "And I love you so"? và #define gồm bao nhiêu byte?
Và ở đây có nói đến string:
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
In fact, C's only truly built-in string-handling is that it allows us to use string constants (also called string literals) in our code. Whenever we write a string, enclosed in double quotes, C automatically creates an array of characters for us, containing that string, terminated by the \0 character. For example, we can declare and define an array of characters, and initialize it with a string constant:
char string[] = "Hello, world!";
In this case, we can leave out the dimension of the array, since the compiler can compute it for us based on the size of the initializer (14, including the terminating \0). This is the only case where the compiler sizes a string array for us, however; in other cases, it will be necessary that we decide how big the arrays and other data structures we use to hold strings are.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Mình có 2 thắc mắc ở chỗ này đó là string[] = "", sẽ có tối đa bao nhiêu kí tự và \o có nghĩa là gì??? Tk
Code:
#include<stdio.h> #define MSG1 "And I love you so" int main(void) { char msg[] = MSG1; printf("%s",msg); return 0; }
Và ở đây có nói đến string:
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
In fact, C's only truly built-in string-handling is that it allows us to use string constants (also called string literals) in our code. Whenever we write a string, enclosed in double quotes, C automatically creates an array of characters for us, containing that string, terminated by the \0 character. For example, we can declare and define an array of characters, and initialize it with a string constant:
char string[] = "Hello, world!";
In this case, we can leave out the dimension of the array, since the compiler can compute it for us based on the size of the initializer (14, including the terminating \0). This is the only case where the compiler sizes a string array for us, however; in other cases, it will be necessary that we decide how big the arrays and other data structures we use to hold strings are.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Mình có 2 thắc mắc ở chỗ này đó là string[] = "", sẽ có tối đa bao nhiêu kí tự và \o có nghĩa là gì??? Tk
Comment