ab=*var+10=100+10=110
选B
32 a为10个元素的数组。
选项中,用的是scanf, 所以需要地址。
A正确, 等效于&a[i]
B不算正确,&a为int**型,不过值相同,可以正常工作。
C不正确, *(a+i)为a[i] 是值,不是地址。
D 和C一样。
所以 只有A是完全正确的。
33 ptr=&str[2] = str+2
*(ptr+3)=*(str+2+3)=*(str+5)=str[5]=\0
选B
显然,I和y都是局部的变量。I的初值是0,但是y是未初始化的局部变量。
如:
IntI=0;Inty;
(我<y我+ +){
//……
}
}
扩展资料:
在c++中初始化的全局变量在编译时存储在数据段中,而未初始化的全局变量则存储在BSS段中。这样做的原因是data部分中的变量需要分配空间来将它们的值存储在编译后的文件中,
不初始化保存变量(或初始化为0的静态变量或全局变量),其默认值为0。没有必要在data部分存储其值都为0的变量。但是,BSS部分只保留给未初始化的全局变量和局部静态变量。
但是,这些变量在程序执行时占用内存空间,因此可执行程序必须记录这些变量在BSS段中占用多少空间。