c语言运行程序程序的运行结是??

在Linux上用C语言作了一个程序,程序中申请(malloc)了很大的内存,但是没free,当程序运行结束后,内存是否自动释放?
[问题点数:100分,结帖人youyi]
在Linux上用C语言作了一个程序,程序中申请(malloc)了很大的内存,但是没free,当程序运行结束后,内存是否自动释放?
[问题点数:100分,结帖人youyi]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关帖子推荐:
2003年4月 Linux/Unix社区大版内专家分月排行榜第二2003年3月 Linux/Unix社区大版内专家分月排行榜第二
2008年2月 VB大版内专家分月排行榜第一2003年4月 VC/MFC大版内专家分月排行榜第一2002年11月 VC/MFC大版内专家分月排行榜第一
2011年11月 VC/MFC大版内专家分月排行榜第二2008年3月 VB大版内专家分月排行榜第二2008年3月 硬件/嵌入开发大版内专家分月排行榜第二2003年4月 其他开发语言大版内专家分月排行榜第二2003年4月 VB大版内专家分月排行榜第二2003年3月 VB大版内专家分月排行榜第二
本帖子已过去太久远了,不再提供回复功能。c语言 以下程序的运行结果
c语言 以下程序的运行结果
{inta,b=250,c;
if((c=b)&0)a=4;
else if(b=0)a=5;
printf("\t%d\t%d\n",a,c);
if(c=(b==0))
printf("\t%d\t%d\n",a,c);
if(a=c=b)a=4;
printf("\t%d\t%d\n",a,c);
补充:写出为啥是这个结果,不要只有答案
6&& 5
6&& 0
0&& 0
备注:你的inta是否是笔误,应该是int a,中间没空格是会报错的。
结果为什么是这个,你写出来啊,答案我知道,就不知道为啥
对不起,前面答案有误
if((c=b)&0)a=4;首先让c=b=250, 250&0为假, 条件假
else if(b=0)会把b的值改为0,这个条件也为假
else a=6;则执行这句让a=6;
第一次输出a和c的值:6& &250
if(c=(b==0))先判断b是否为0,结果假,所以c=0,
因此条件也是假,a=5跳过
第二次输出a和c:6&& 0
if(a=c=b)a=4;括号里从右到左,先c=b=250然后a=250, 最后条件也为真,
最后输出a和c:4&& 250
正确结果是:
可是书后答案是
我犯了一个错误,忘了b已经被改为0了更正如下:
if((c=b)&0)a=4;首先让c=b=250, 250&0为假, 条件假
else if(b=0)会把b的值改为0,这个条件也为假
else a=6;则执行这句让a=6;
第一次输出a和c的值:6& &250
if(c=(b==0))先判断b是否为0,结果真,所以c=1
a=5;应该执行
第二个输出是: 5,1
if(a=c=b)a=4;括号里从右到左,先c=b=0然后a=0, 最后条件假,
a=4;不执行
最后一行输出a和c:0&& 0
所以正确结果是
的感言:太帅气了,谢谢啊
其他回答 (2)
运行以后结果是:
6&&&&&& 250
5&&&&&& 1
0&&&&&&& 0
6&&& 250
5&&& 1
0&&& 0
第一个if-else if-else中,第一个条件错误,条件中执行了c=b,现在c是250,赋值表达式的值是250,不&0;第二个条件也错误,它将b赋值为0,所以赋值表达式的值为0,在C语言中,0代表假;执行最后一个else后面的语句:赋值 a=6;现在,a=6,c=250,b=0;输出a、c如第一行;
第二个if语句中,先判断b==0,为真,逻辑表达式的值为1,将其赋给c,赋值表达式的值为1,为真,执行a=5;现在,a=5,c=1,b=0;输出a、c如第二行;
第三个if语句中,将b的值赋给c,此赋值表达式的值为b的值,即0,将其赋给a,整个赋值表达式的值为0,判断失败,不执行if后面的语句;现在,a=0,c=0,b=0;输出a、c如第三行。
#include&stdio.h&
void main()
{int a,b=250,c;
if((c=b)&0)a=4;
else if(b=0)a=5;
printf("\t%d\t%d\n",a,c);
if(c=(b==0))
printf("\t%d\t%d\n",a,c);
if(a=c=b)a=4;
printf("\t%d\t%d\n",a,c);}
等待您来回答
编程领域专家百度经验——实用生活指南
手工制作,简单七步,普通萝卜变身可爱蘑菇
2015最强抢票宝典,快速,完备,超乎你想象!
手工制作,简单七步,普通萝卜变身可爱蘑菇
2015最强抢票宝典,快速,完备,超乎你想象!
十月怀胎,早中晚期营养补充大不同。
增强免疫力,让宝宝更健康。
今天你被“电”了吗?
盈盈一握楚宫腰,想瘦腰,弹力绳帮你忙。
小猪扒大虾
就是要看rui
叶子3211123
Airen☆果果
高级相亲技巧,脱单必备宝典。
qingshuixin
恶魔之泪love
sbong16888
滚汤浓汤,祛寒除冷,暖身首选。
三千金麻麻
叶子3211123
万事俱备方可顺利订票!
taiyangyu0421
五月小水儿
huabyo3700
学会申请信用卡,提前支配资金。
敏敏特穆尔七七
excel单张表中求平均数,根据数据是否连续的情况,采用不同的处...
小猪也无奈
冬季学会汽车保养,让出行更放心。
黄金圣斗士1911
super_sunboyC语言模拟试题题库
本试题来自:(2014年C语言模拟试题,)一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的。若运行以下程序时,从键盘输入ADescriptor<CR>(<CR>表示回车),则下面程序的运行结果是
#include <stdio.h>
int v0=1,v1=0,v2=0;
do switch(c=getchar())
case 'a':case 'A':
case 'e':case 'E':
case 'i':case 'I':
case 'o':case 'O':
case 'u':case 'U':v1+=1:
default:v0+=1;v2+=1;while(c!='\n');
printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2);
A) v0=7,v1=4,v2=7
B) v0=8,v1=4,v2=8
C) v0=11,v1=4,v2=11
D) v0=13,v1=4,v2=12正确答案:有, 或者 答案解析:有,
您可能感兴趣的试题
单项选择题:()有以下程序: #include <stdio.h>void funl (char * p) char *
while( *q! ='\0')
(*q) ++;q++;mains( ) char a[ ] =
p = &a[3]; fun1 (p); printf("% s \n" ,a);程序执行后的输出结果是(
)。A) Prohsbn
B) Prphsbn
C) Progsbn
D) Program答案:有,答案解析:有,单项选择题:()下面程序段中c的二进制值是______。
char a=3,b=6,c;
c=a^b<<1;
D) 答案:有,答案解析:有,
C语言模拟试题最新试卷
C语言模拟试题热门试卷

我要回帖

更多关于 c语言程序设计教程 的文章

 

随机推荐