| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3096 人关注过本帖
标题:指针数组在定义的时候为什么不能付初值
只看楼主 加入收藏
童生
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:205
专家分:455
注 册:2018-3-7
收藏
得分:0 
看到这种懒到切个图的贴子向来是很痛恨的,不但浪了论坛空间资源,也拖慢了网速。难道有心帮忙的人还要打一遍代码再去调试?看来楼主也不是很想别人帮助,不帮也罢.
2018-04-01 12:38
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
回复 11楼 童生
其实看图调试的确麻烦,所以过了,可以理解就算了~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2018-04-01 13:08
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
说到指针,可以弄个好玩的来看看~

程序代码:
#include<stdio.h>

int main( void )
{
    char s[6]={"abcds"};
    
    ( int )s[0]=*(( const int* const )"wxyzk");
    
    puts(s);
    
    return 0;
}


可以先猜猜再看看这个运行结果是多少~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2018-04-01 13:34
童生
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:205
专家分:455
注 册:2018-3-7
收藏
得分:0 
( int )s[0]=*(( const int* const )"wxyzk");

什么编译器可以这样?  

*(( const int* const )"wxyzk"); ==> w
2018-04-01 13:50
童生
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:205
专家分:455
注 册:2018-3-7
收藏
得分:0 

s[0]=*(( const int* const )"wxyzk");  就是  s[0]= "wxyzk"[0];或者 s[0]=0[ "wxyzk"];
2018-04-01 13:52
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
回复 14楼 童生
你那个编译器不支持这个语法么,我这边试过没有问题,如果是'w'那就过于简单了一些~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2018-04-01 14:03
童生
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:205
专家分:455
注 册:2018-3-7
收藏
得分:0 
没注意这里const int* const 是int
2018-04-01 14:06
童生
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:205
专家分:455
注 册:2018-3-7
收藏
得分:0 
但虽然是这样,有区别吗? ( int )s[0]=*(( const int* const )"wxyzk");这个(int)语法什么编译充许?
2018-04-01 14:12
童生
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:205
专家分:455
注 册:2018-3-7
收藏
得分:0 
    char s ='k';

    int a=12;

    (int)s =a;

谁的编译器可以这样?按XX同志的说法未定义行为

2018-04-01 14:14
童生
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:205
专家分:455
注 册:2018-3-7
收藏
得分:0 
两者所需的内存空间都不一样编译器怎么可能这样处理?如你的编译器是允许的,真的可以扔了
2018-04-01 14:16
快速回复:指针数组在定义的时候为什么不能付初值
数据加载中...
 
   



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

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