可能重复:
C -> sizeof 字符串始终为 8
我找到了以下创建字符串的方法:
#include <stdio.h>
#include <string.h>
int main(void) {
char *ptr = "this is a short string";
int count = sizeof ptr / sizeof ptr[0];
int count2 = strlen(ptr);
printf("the size of array is %d\n", count);
printf("the size of array is %d\n", count2);
return 0;
}
我不能使用通常的方式来获取长度sizeof ptr / sizeof ptr[0]
,这种创建字符串的方式是否有效?他的符号有什么优点和缺点吗?