69,371
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <string.h>
int main()
{
char *ch = "啊";
printf("%d\n", sizeof(ch));
//printf("the ch was 0x%X, 0x%X\n", (unsigned char)ch[0],(unsigned char)ch[1]);
printf("the ch was %#X, %#X\n", ch[0]&0xFF,ch[1]&0xFF);
//printf("the ch was %#X, %#X\n",ch[0], ch[1]);
return 0;
}
为什么上面那个代码却只显示一个字节的十六进制数,而不是四字节的十六进制数呢?#include <stdio.h>
void show_array(int arr[])
{
printf("the value of sizeof was %d\n", sizeof(arr) );
}
int main()
{
int arr[4] = {
1,2,3,4
};
show_array(arr);
return 0;
}
2.错