C 需要以下输出发生的原因
这段代码的输出结果是:25。 我明白为什么2,但为什么5来找*(ptr-1) 而且C 需要以下输出发生的原因,c,C,这段代码的输出结果是:25。 我明白为什么2,但为什么5来找*(ptr-1) 而且 main(){ int a[5]={1,2,3,4,5}; int *ptr=(int *)(&a+1); printf("%d %d",*(a+1),*(ptr-1)); } 此代码将输出显示为:垃圾值。如何以及为什么?printf()函数返回一个整数。成功后,返回值为写入的字符数。错误时,返回值为负值 由于将首先执行printf(“%d”)(内部的printf(“%d”),prin
main(){
int a[5]={1,2,3,4,5};
int *ptr=(int *)(&a+1);
printf("%d %d",*(a+1),*(ptr-1));
}
此代码将输出显示为:垃圾值。如何以及为什么?printf()
函数返回一个整数。成功后,返回值为写入的字符数。错误时,返回值为负值
由于将首先执行printf(“%d”)
(内部的printf(“%d”),printf(“%d”)
),因此它很可能会显示内存位置的一些随机值。之后,printf(“%d”,printf(“%d”)
将打印上一次调用期间写入的值的数量
示例:12345678910请在每个堆栈溢出帖子中坚持一个主题。你的第二个例子与第一个完全无关。
main(){
while(1)
{
if(printf("%d",printf("%d")))
break;
else
continue;
}
}