| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 465 人关注过本帖
标题:字符指针的问题 求解~~~
只看楼主 加入收藏
hywhll888
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2011-6-9
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:6 
字符指针的问题 求解~~~
#include <stdio.h>
#include <math.h>
#include <string.h>
void main()
{
    int hg(char *q);
    char a[30],*q;
    int i;
    q=a;
    q="34hdjhf832djnds";
    for(;*q!='\0';q++)
        printf("%c",*q);
    printf("\n");
    for(i=0;a[i]!='\0';i++)
        printf("%c",a[i]);
}


q的起始地址不是等于a的起始地址吗,为什么用下标不能输出值来。
但是用scanf输入后却可以,为什么?


#include <stdio.h>
#include <math.h>
#include <string.h>
void main()
{
    int hg(char *q);
    char a[30],*q;
    int i;
    q=a;
    scanf("%s",q);
    for(;*q!='\0';q++)
        printf("%c",*q);
    printf("\n");
    for(i=0;a[i]!='\0';i++)
        printf("%c",a[i]);
}


搜索更多相关主题的帖子: include 
2011-07-30 13:24
樱花雾海
Rank: 2
来 自:广西桂林
等 级:论坛游民
帖 子:39
专家分:28
注 册:2011-6-17
收藏
得分:4 
这是c语言的吧,我还没有学到指针,爱莫能助
2011-07-30 14:41
wjm22
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:44
专家分:118
注 册:2011-7-5
收藏
得分:4 
这个方法输入的字符串大概没有\0吧,试下在字符串后面加\0吧,我没电脑,放假很长时间没玩了,现在没啥感觉
2011-07-30 15:08
啊我飞
Rank: 1
等 级:新手上路
帖 子:8
专家分:8
注 册:2009-4-2
收藏
得分:4 
q="34hdjhf832djnds";
这句话又重新给q分配了地址,已经不是原来初始化时的地址了,所以a[i]不能够正确的输出。
2011-07-30 15:25
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:4 
回复 楼主 hywhll888
你自己解释一下q="dfjskfhdfd"是什么意思?

授人以渔,不授人以鱼。
2011-07-30 15:25
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:4 
程序代码:
#include <stdio.h>
#include <math.h>
#include <string.h>
void main()
{
    char a[30],*q;//你的字符数组里面都是默认值
    int i;
    q=a;//q指向了这么默认值
    q="34hdjhf832djnds";//指向DS只读数据段
    for(;*q!='\0';q++)//输出DS只读数据段内容
        printf("%c",*q);
    printf("\n");
    for(i=0;a[i]!='\0';i++)//输出那些默认值内容
        printf("%c",a[i]);
}
收到的鲜花
  • hywhll8882011-07-30 17:12 送鲜花  3朵   附言:我很赞同

                                         
===========深入<----------------->浅出============
2011-07-30 15:36
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
下面的代码其实就是你往字符数组里面输入了一些内容 然后两次输出它

                                         
===========深入<----------------->浅出============
2011-07-30 15:37
快速回复:字符指针的问题 求解~~~
数据加载中...
 
   



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

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