charポインタで初期化した文字列のサイズについてわからないことがあります。
コードを以下に示します。
c
1#include <stdio.h> 2#include <string.h> 3 4int main() 5{ 6 char* str1 = "string"; 7 printf("%ld\n", sizeof(str1)); // 8 8 9 char str2[] = "string"; 10 printf("%ld\n", sizeof(str2)); // 7 11 12 return 0; 13}
str2のサイズが7になるのは、終端文字があるからだと思うのですが、str1のサイズが8になる理由がわかりません。
ご教授頂けると幸いです。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/18 12:04
2020/01/18 12:13