在C語言中,字符串可以被賦值給字符數(shù)組或者字符指針。
字符數(shù)組是一個(gè)固定長度的字符序列,可以通過直接賦值或通過strcpy()函數(shù)來賦值給字符串。
例如:
char str1[10] = "Hello";
char str2[10];
strcpy(str2, str1);
在這個(gè)例子中,str1是一個(gè)字符數(shù)組,可以直接賦值為 “Hello”。str2也是一個(gè)字符數(shù)組,通過strcpy()函數(shù)將str1的值復(fù)制給str2。
字符指針可以指向字符串的起始位置,可以通過直接賦值或者通過strcpy()函數(shù)來賦值給字符串。
例如:
char *str1 = "Hello";
char *str2;
str2 = str1;
在這個(gè)例子中,str1是一個(gè)字符指針,可以直接賦值為指向字符串 “Hello” 的地址。str2也是一個(gè)字符指針,將str1的值賦給str2。
需要注意的是,當(dāng)使用字符指針賦值時(shí),是將指針指向字符串的起始位置,而不是將字符串的內(nèi)容復(fù)制給指針。因此,在修改str2的值時(shí),可能會(huì)影響到str1指向的字符串。如果需要在字符指針之間進(jìn)行字符串復(fù)制,同樣可以使用strcpy()函數(shù)。
總結(jié)起來,C語言中字符串的賦值規(guī)則主要是通過直接賦值或strcpy()函數(shù)來將字符串的內(nèi)容賦值給字符數(shù)組或字符指針。