| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1079 人关注过本帖
标题:哪位高手能解释下如下的程序?
只看楼主 加入收藏
roar
Rank: 2
等 级:论坛游民
帖 子:47
专家分:30
注 册:2010-5-14
收藏
得分:0 
牛逼

C语言 /  VB编程/MCS-51单片的菜鸟,大虾们请加QQ:89306026大家一起学习探讨。
2010-12-04 15:03
venus85
Rank: 6Rank: 6
等 级:侠之大者
帖 子:159
专家分:477
注 册:2010-11-27
收藏
得分:0 
回复 6楼 outsider_scu
真理??
这个真没有!
真相只有一个
坐等高手给出真相!
2010-12-04 15:13
安普留香
Rank: 2
等 级:论坛游民
帖 子:77
专家分:62
注 册:2010-5-17
收藏
得分:0 
没见过这种用法
2010-12-04 15:15
xzy199999
Rank: 4
等 级:业余侠客
帖 子:326
专家分:286
注 册:2010-11-19
收藏
得分:0 
高手已经给出真相了

我是初学者
2010-12-04 16:45
sunmingchun
Rank: 4
来 自:安徽-滁州
等 级:业余侠客
帖 子:198
专家分:277
注 册:2010-4-2
收藏
得分:0 
郁闷的我受不了,居然还有这样的程序。受教啊!
2010-12-04 18:18
不归鹄
Rank: 9Rank: 9Rank: 9
来 自:冥王星
等 级:蜘蛛侠
威 望:4
帖 子:491
专家分:1380
注 册:2009-12-20
收藏
得分:0 
这样的代码能给算法带来什么好处吗?

2010-12-04 18:37
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
收藏
得分:0 
我说过这只是运算优先级和[](变址运算符)的问题,其实只要你指针学好了,其实也很简单的不是吗?
其实这也是为什么 C\C++ 比较难学了,因为它拥有狭义的东西变得不抽象之后就不好学了。
建议多看书、多思考。当然如果你不打算编写系统软件或操作系统或你不想做一名黑客,你完全可以不学这个。(学了也没坏处)

My life is brilliant
2010-12-04 19:13
zaixuexi
Rank: 12Rank: 12Rank: 12
来 自:上海
等 级:火箭侠
威 望:8
帖 子:858
专家分:3233
注 册:2010-12-1
收藏
得分:0 
程序代码:
const char *str_tbl[] = {
    "Ya!Hello! how is this? %s\n",
    "junk/super",
    "WHAT%c%c%c  %c%c  %c !\n",
    "this",
    "beauty",
    "tool",
    "is",
    "sensitive",
    "CCCCCC"
};

int main(int argc, char *argv[])
{
    int a=3, b = 5;
    printf(&str_tbl[0][a], &str_tbl[1][b]);
    printf(&str_tbl[2][a],
            str_tbl[3][1],
            str_tbl[4][2],
            str_tbl[5][0],
            str_tbl[6][0],
            str_tbl[7][3],
            str_tbl[8][4]);
    return 0;
}
1. 等价的代码,大家看一看就明白了
C语言表现形式的多样性
2. 说一下如何等价
&a["Ya!Hello! how is this? %s\n"]
"Ya!Hello! how is this? %s\n" (隐含地址表达,可以反汇编看到的)-> char *str = "Ya!Hello! how is this? %s\n";
<=>
&a[str]
<=>
&str[a]  如lz1091914999所言,优先级的问题,编译的时候会知道哪个是基址,哪个是变址
二维的话就是
&a[str_tbl[0]]   
<=>
&str_tbl[0][a]

技术问题,请不要以短消息方式提问
2011-05-09 18:16
快速回复:哪位高手能解释下如下的程序?
数据加载中...
 
   



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

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