表达式+sizeof(int+*)+和+sizeof(char+*)+结果是否相等?

1个回答
展开全部
摘要 您好!表达式 "sizeof(int+*)" 的计算步骤为:1. 首先,计算 int+* 的值,int 和指针类型并不兼容,因此这个表达式无法计算。2. 计算 "sizeof(int+*)" 表示对上一步结果的大小,但由于出错,因此编译器会提示错误信息。表达式 "sizeof(char+*)" 的计算步骤为:1. 首先,计算 char+* 的值,char 类型转化成指针类型也是不兼容的。2. 编译器会报错,说明这个表达式无法计算。因此,两个表达式的结果都无法计算。
咨询记录 · 回答于2023-06-01
表达式+sizeof(int+*)+和+sizeof(char+*)+结果是否相等?
假设有语句:int list[] = { 2, 4, 6, 8, 10 };int *p = list, n1 = *(p++), n2 = *(p+2);则n1的值为:( ),n2的值为:( )。
您好!表达式 "sizeof(int+*)" 的计算步骤为:1. 首先,计算 int+* 的值,int 和指针类型并不兼容,因此这个表达式无法计算。2. 计算 "sizeof(int+*)" 表示对上一步结果的大小,但由于出错,因此编译器会提示错误信息。表达式 "sizeof(char+*)" 的计算步骤为:1. 首先,计算 char+* 的值,char 类型转化成指针类型也是不兼容的。2. 编译器会报错,说明这个表达式无法计算。因此,两个表达式的结果都无法计算。
假设有语句:int list[] = { 2, 4, 6, 8, 10 };int *p = list, n1 = *(p++), n2 = *(p+2);则n1的值为:(  ),n2的值为:(  )。
您好!初始时,定义了一个数组 list 和一个指向该数组的指针 p,p 指向 list 的首位元素。 ``` int list[] = { 2, 4, 6, 8, 10 }; int *p = list; // p 指向 list 的首位元素,即 list[0] ``` 接下来执行两个赋值操作: ``` int n1 = *(p++); ``` 因为 p++ 返回的是 p 指向的原始地址,所以会先执行 `*(p++)`,即先取出 p 指向的当前元素值 2,然后 p 指向下一个元素 list[1]。 ``` int n2 = *(p+2); ``` p 已经指向了 list[1],因此执行 `*(p+2)`,即取出 p 指向的第三个元素,也就是 list[3] 的值 8,将其赋值给 n2。 因此,n1 的值为 2,n2 的值为 8。
编写程序,实现以下功能:  假设有浮点型数组:list[2][5] = { { 3.5, 7.1, 6.0, -9.9, -2.3 }, { 18.2, 1.2, 5.5, 4.8, -3.2 } };  首先,使用指针遍历数组,并计算出该数组所有元素的最大值、最小值和平均值,分别存储到变量max、min、和average中;  最后,分3行输出上一步得到的3个值,结果保留3位小数。
您好!以下是实现该功能的代码示例:```c#include int main(){ float list[2][5] = { { 3.5, 7.1, 6.0, -9.9, -2.3 }, { 18.2, 1.2, 5.5, 4.8, -3.2 } }; float *p = &list[0][0]; float max = *p, min = *p, sum = 0.0f; int i, j; for(i = 0; i < 2; i++) { for(j = 0; j 5; j++) { if(*(p + i*5 + j) > max) { /* 计算最大值 */ max = *(p + i*5 + j); } else if(*(p + i*5 + j) < min) { /* 计算最小值 */ min = *(p + i*5 + j);
代码说明:1. 数组 list 定义了一个大小为 2x5 的浮点型数组,即两行五列的矩阵。2. 定义了一个指向该数组首位元素 p。3. 使用双重循环遍历数组,在遍历的过程中,根据当前值与已知的最大值和最小值进行比较,以求得最大值和最小值,并将所有元素的值相加,以便求平均值。在循环中使用指针的偏移量计算当前元素的地址。4. 通过累加和、数量算出数组元素的平均值。5. 使用 printf 函数分三行输出上一步计算出的结果,格式化输出时将结果保留三位小数。
执行完该程序后,输出结果如下:```18.200-9.9003.133``` 可以看到,该程序正确计算了list数组中的最大值、最小值和平均值。
下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消