jzhang918 发表于 2010-01-13 20:58

回复 #1 cjaizss 的帖子

另外,你是不知道这个问题的答案呢还是考考大家呢?

bsdc 发表于 2010-01-23 20:26

原帖由 jzhang918 于 2010-1-13 20:58 发表 http://linux.chinaunix.net/bbs/images/common/back.gif
另外,你是不知道这个问题的答案呢还是考考大家呢?
还是在思考更深层的?:em09:

逸远 发表于 2010-02-06 15:16

:lol:

zqy1005 发表于 2010-07-30 19:00

其实我想问的问题一共有四个:
第一,为什么可以链接通过.
第二,为什么链接的时候连个warning都没有.
第三 ...
cjaizss 发表于 2009-12-30 02:16 PM http://linux.chinaunix.net/bbs/images/common/back.gif


    俺只关注前两个问题,因为这两个问题的原因知道了,剩下的迎刃而解

   望版主公布答案

wmmy2008 发表于 2010-07-31 17:18

1.c定义一个数组,而2.c 又声明为指针.. 那是会出大问题的。
数组和指针并非等价的。可参考<<C专家编程>>书上说的很清楚,这个问题其实很好理解....

wmmy2008 发表于 2010-07-31 17:20

不好意思,没看到帖子这么老了,,,不该冒皮皮..

system888net 发表于 2010-07-31 19:37

我用如下代码测试
/*1.c*/
#include
char s[]="test\n";
void func()
{
      printf(s);
}
/2. ...
cjaizss 发表于 2009-12-29 18:35 http://linux.chinaunix.net/bbs/images/common/back.gif


    感觉不错.

system888net 发表于 2010-07-31 19:39

不好意思,没看到帖子这么老了,,,不该冒皮皮..
wmmy2008 发表于 2010-07-31 17:20 http://linux.chinaunix.net/bbs/images/common/back.gif


    有意义的帖不在新老。

system888net 发表于 2010-07-31 19:39

原因在于 1.c 和 2.c中 s 的类型是不一样的。在 1.c 中, s 是字符串"test\n"的起始地址。 func 调用 pri ...
jzhang918 发表于 2009-12-29 21:37 http://linux.chinaunix.net/bbs/images/common/back.gif


    说的好.

bluesea666 发表于 2010-08-03 23:40

学习了.
页: 1 [2] 3
查看完整版本: 看到C版上有人问的一个问题想到的,关于数组和指针