寒假作业:2024/2/13

文章详细探讨了数据类型字节大小的规定,栈的操作逻辑,包括出栈顺序和无符号整数运算,C语言中指针的使用、内存地址计算以及头文件防止重复包含的#pragma指令。还涉及了数组和常量指针的示例程序。
摘要由CSDN通过智能技术生成

https://kdocs.cn/l/cl2SWN71CuKK

规定:数据类型的字节大小

21.C        22.B        23.B        5先出栈表示1,2,3,4已经入栈了,5出后4出,但之后想出1得先让3,2先后出栈,所以 B 不可能

24.10,12,120        25.2,5

26.死循环

27.0,41        28.(a)25(奇数项相差5) (b)320        29.a=a+b;b=a-b;a=a-b;

30.p1+5=0x801005;p2+5=0x810014;        31.C        32.45        33.D        34.X=10,Y=6

35.5,9        36.C

37.

void set_BIT3()
{
	a |= (0x0001<<3);
}
void clean_BIT3()
{
	a &= ~(0x0001<<3);
}

38.

int main(void)
{
    int *p=(int *)0x67a9;
    *p=0xaa66;
    return 0;
}

39. puts(">6"),因为有符号int 与无符号 int 参与运算时,会将有符号转换为无符号参与运算,-20转换成无符号数大于6,所以+6也大于6

40.3

41.h,g,c

42.(1)10^3,10^6,2.5*10^6,1/20*10^6(2)10^-9,10^-6,10^-3(3)8,1024,1024

43.c,b,h,b,c,i,m(#pragma是用来防止头文件被重复包含的)

44.

char a[2][10]={"abcdefg","123456789"};
const char *str[2]={"abcdefg","123456789"};
int main(int argc, const char *argv[])
{
	char *p1;
	char (*p2)[10];
	const char **p3;
	char c;
	p1=a[0];//把a的第一个元素的地址代入p1
	c=*(p1+1);//通过p1的运算引用'b'
	c=*(p1+14);//通过p1的运算引用'5'
	p2=a;//把a的第一行的地址代入p2
	c=*(*(p2)+1);//通过p2的运算引用'b'
	c=*(*(p2+1)+4);//通过p2的运算引用'5'
	p3=str;//把str的地址代入p3
	c=*(*(p3)+1);//通过p3的运算引用'b'
	c=*(*(p3+1)+4);//通过p3的运算引用'5'
	return 0;
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值