char s[] = "\\123456\123456\t1";//strlen 计算空格 空格asci=32,算1个,\t也算1个,asci=9
printf("%d\n", strlen(s));
printf("%s\n", s);
strlen对于\t的计算
静态局部变量在循环中静态区开辟不会每次重新初始化并赋值,会累加
int n = 3;
while (n > 0)
{
static i = 1;//静态区开辟不会每次重新赋值,会累加
i++;
}
不过如果这么写,就会每次重新赋值为0
int n = 3;
while (n > 0)
{
static k ;//静态区开辟不会每次重新初始化并赋值
k = 0;//每次会赋值为0
k++;
n--;
}
操作符计算顺序
const 修饰指针
const int* p =&a; 修饰的是指针指向的内容 *p无法修改 a得值 等价于 int const *p = &a;
int* const p =&a; 修饰p这个指针变量 无法修改指针指向
5
、对于下面的说法,正确的是( )
A:
对于
struct X{short s;int i;char c;}
,
sizeof(X)
等于
sizeof(s) + sizeof(i) + sizeof(c)
B:
对于某个
double
变量
a
,可以使用
a == 0.0
来判断其是否为零
C:
初始化方式
char a[14] = "Hello, world!";
和
char a[14]; a = "Hello, world!";
的效果相同
D:
以上说法都不对