| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 777 人关注过本帖
标题:关于memset函数的问题
只看楼主 加入收藏
liubin697
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2011-5-18
收藏
得分:0 
回复 9楼 BianChengNan
我把代码换了下memset(&b,'s',3);但是输出&b的话就只输出3个字节的了,就是SSS。
#include <stdio.h>
#include<string.h>
int main()
{
    char *b="Abcdef" ;
    char a[]="dafdgfhguutu";
    printf("%s\n",b);
    memset(a,'b',5);
    memset(&b,'s',3);
    printf("%s\n",a);
    printf("%s\n",&b);//这地方如果换成printf("%s\n",b);的话也是错误的了



}这是为什么呢
2012-03-17 13:14
rjvsky
Rank: 3Rank: 3
来 自:陕西西安
等 级:论坛游侠
帖 子:77
专家分:106
注 册:2012-3-6
收藏
得分:3 
*b  将把字母  A 的ASCII 值作为地址 使用
编译当然不会出错,但如果你细心的话,你会发现编译给出了警告!!!!一个好的编程人员是不允许自己的程序出现警告的!!!

企业需要的人才,是真正可以给他们带来经济效益的人,而不是一大堆没用的证书,看淡证书,强化自己···
2012-03-17 13:40
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
memset(*b,'c',3);

b是指针,*b是指针指向的数据的值,根据前面的定义,*b指向一个char数据,即*b是一个char,把char代入上面的函数调用中,看看那错不错?

授人以渔,不授人以鱼。
2012-03-17 15:28
llooppzhang
Rank: 7Rank: 7Rank: 7
来 自:江苏
等 级:黑侠
威 望:5
帖 子:308
专家分:518
注 册:2009-10-18
收藏
得分:3 
memset()第一个参数是指针,用b就可以了。。。
2012-03-17 16:32
C_戴忠意
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:575
专家分:1349
注 册:2011-10-21
收藏
得分:3 
这个C书上有吧丶详解看书

编程之路定要走完……
2012-03-17 18:13
liubin697
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2011-5-18
收藏
得分:0 
回复 14楼 llooppzhang
用b  不行  也报错   必须是&b
2012-03-17 20:31
快速回复:关于memset函数的问题
数据加载中...
 
   



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

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