以下兩個片段之間是否有區別? 一個是char數組,而另一個是字符數組指針,但它們的行爲相同,不是嗎?字符數組問題C++
實施例1:
char * transport_layer_header;
// Memory allocation for char * - allocate memory for a 2 character string
char * transport_layer_header = (char *)malloc(2 * sizeof(char));
sprintf(transport_layer_header,"%d%d",1,2);
實施例2:
char transport_layer_header[2];
sprintf(transport_layer_header,"%d%d",1,2);
你可能會考慮使用'snprintf'而不是'sprintf';前者提供邊界檢查以確保不會超出目標數組。 – 2009-12-02 18:17:48
您需要爲2個字符的字符串分配3個字符,以計算結尾的空值。 – 2009-12-02 18:24:34
注意點。謝謝。 – halluc1nati0n 2009-12-02 18:30:05