| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 401 人关注过本帖
标题:关于数组和指针的疑问
只看楼主 加入收藏
苍翠的路
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2014-4-15
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:6 
关于数组和指针的疑问
程序代码:
#include<iostream>

using namespace std;

int main()
{
    char *p = "OK";
    cout<< *p <<endl;                //O
    cout<< p <<endl;                //OK

    char ch[] = "OK";
    cout << *ch << endl;             //O
    cout << ch << endl;             //OK
    
    int q[] = {1,2,3};
    cout << *q << endl;              //1
    cout << q << endl;              //0012ff34(地址值)

        return 0;


为什么输出p、ch、q的结果是这样?
*p、*ch、*q的作用都是对首地址取引用?
还有,数组名到底是不是指针?
还请大家指教。
搜索更多相关主题的帖子: color 
2014-09-16 22:03
stop1204
Rank: 9Rank: 9Rank: 9
来 自:福建省
等 级:贵宾
威 望:22
帖 子:295
专家分:1151
注 册:2013-9-8
收藏
得分:2 
指针 指向 数组的首个地址.

数组名也是指向数组的首个地址

hl928452957@gmail点com

2014-09-16 23:10
fl8962
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:539
专家分:2471
注 册:2012-10-17
收藏
得分:5 
cout<< *p <<endl;                //O  p 指向首地址, *p解引用,输出第一个字母
    cout<< p <<endl;                //OK

    char ch[] = "OK";
    cout << *ch << endl;             //O  同上
    cout << ch << endl;             //OK
   
    int q[] = {1,2,3};
    cout << *q << endl;              //1 同上
    cout<<q<<endl:  //输出首地址。

想抽苏烟了。
2014-09-19 07:41
fl8962
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:539
专家分:2471
注 册:2012-10-17
收藏
得分:0 
回复 楼主 苍翠的路
char *p = "OK"; 加一个 const char*p="ok"

想抽苏烟了。
2014-09-19 07:47
绝处逢生_615
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-9-13
收藏
得分:0 
#include<iostream>
#include<string>
using namespace std;

int main()
{
    char *p = "OK";
    cout<< *p <<endl;                //O
    cout<< p <<endl;                //OK

    char ch[] = "OK";
    cout << *ch << endl;             //O
    cout << ch << endl;             //OK
   
    int q[] = {1,2,3};
    cout << *q << endl;              //1

    for(int i=0;i<3;++i)
    cout << q[i] << endl;              //0012ff34(地址值)

        return 0;
}

看懂指针就知道为什么了
2014-09-21 13:12
zcdjt
Rank: 3Rank: 3
等 级:论坛游侠
威 望:4
帖 子:99
专家分:181
注 册:2014-9-9
收藏
得分:2 
*p输出的是首个字母,p输出的是首个地址。

今朝醉
2014-09-21 16:38
七夜之华
Rank: 3Rank: 3
来 自:China
等 级:论坛游侠
威 望:5
帖 子:82
专家分:103
注 册:2014-9-7
收藏
得分:1 
数组名不是指针,还有你说的第二条都是按首地址开始输出数组内的数据元素

#############################################
##########################################
因为不懂、才要学习、只有学习、才有进步。
2014-09-21 17:04
快速回复:关于数组和指针的疑问
数据加载中...
 
   



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

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