| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 545 人关注过本帖
标题:为什么会是这样啊?
取消只看楼主 加入收藏
daphne
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-7-20
收藏
 问题点数:0 回复次数:2 
为什么会是这样啊?

我写了个去空格的,为什么不行啊?大家看看

#include "stdafx.h"
#include "iostream.h"

void del(char *a)
{ cout<<sizeof(a)<<endl;
for (int i=0;i<sizeof(a);i++)

{
if (a[i]!=' '&&a[i]!='\0')
cout<<a[i];
else continue;
}
cout<<endl;
}
int main(int argc, char* argv[])
{
char m[20]="djf sfdj ei a df ";
cout<<sizeof(m)<<endl;
del(m);

return 0;
}

为什么cout<<sizeof(m)输出是20,但cout<<sizeof(a)输出是4.

搜索更多相关主题的帖子: del include return 
2006-09-06 11:31
daphne
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-7-20
收藏
得分:0 

但是为什么这个程序不能达到我想要的结果,就是输出为djf,而不是djf sfdjeiadf.
问题出在哪里呢?


2006-09-06 11:46
daphne
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-7-20
收藏
得分:0 
哦!
对!
谢谢!

2006-09-06 11:50
快速回复:为什么会是这样啊?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035365 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved