| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 9630 人关注过本帖
标题:结构体里嵌套一个结构体数组指针
只看楼主 加入收藏
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
收藏
得分:0 
你:“指针没初始化 就是野指针了”、“没初始化 没赋值的指针 叫做野指针”
        “我从来没说过 p是野指针”(引自int* p;)

我:“定义了一个指针变量,但是没有赋初值,是否就叫野指针?” - 如果,当然是如果概念可以类推的话,那么int c;应该叫野整型,等等
       “哦,以前没使用过野指针这个词,估计以后也不大会使用了,呵呵” - 刚分配完一个内存空间,我不会叫它野指针,今天不会,以后还是不会,我还是只会叫它一个指针变量,这个指针变量可能没有初始化,内容为一个随机地址,如果忘记或者不会初始化也没啥,后面通过赋值的形式也可以解决, Top_Mode.seat[i]=malloc(sizeof(seat_s));(虽然我不太赞同这种写法,但依然引自纯版)。

梦想拥有一台龙芯3A-4000
2020-07-03 18:50
八画小子
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:37
帖 子:709
专家分:2063
注 册:2010-11-11
收藏
得分:0 
如果你坚持自己是对的,没必要理会什么啊。天下的代码又不是只有这两句。有这么多时间费时间、费精力、费心情的,不如睡一会。程序猿不缺钱,只缺时间。也可以和女生(或男生)约约,抒发一下感情。生活嘛,不是用来吵架的。
2020-07-03 18:54
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
以下是引用八画小子在2020-7-3 18:54:00的发言:

如果你坚持自己是对的,没必要理会什么啊。天下的代码又不是只有这两句。有这么多时间费时间、费精力、费心情的,不如睡一会。程序猿不缺钱,只缺时间。也可以和女生(或男生)约约,抒发一下感情。生活嘛,不是用来吵架的。

不 很好玩
打脸是一件令我愉快的事情

https://zh.
2020-07-03 18:55
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
以下是引用ditg在2020-7-3 18:50:23的发言:

你:“指针没初始化 就是野指针了”、“没初始化 没赋值的指针 叫做野指针”
        “我从来没说过 p是野指针”(引自int* p;)

我:“定义了一个指针变量,但是没有赋初值,是否就叫野指针?” - 如果,当然是如果概念可以类推的话,那么int c;应该叫野整型,等等
       “哦,以前没使用过野指针这个词,估计以后也不大会使用了,呵呵” - 刚分配完一个内存空间,我不会叫它野指针,今天不会,以后还是不会,我还是只会叫它一个指针变量,这个指针变量可能没有初始化,内容为一个随机地址,如果忘记或者不会初始化也没啥,后面通过赋值的形式也可以解决, Top_Mode.seat=malloc(sizeof(seat_s));(虽然我不太赞同这种写法,但依然引自纯版)。

我从来没说过 p是野指针 所以是错的
我从来没说过 p是野指针

嗯 如果你认为这两句话表达相同意思 请允许我大笑三声 以示鄙视
定义了一个指针变量,但是没有赋初值,是否就叫野指针?

是的
如果,当然是如果概念可以类推的话,那么int c;应该叫野整型,等等

你喜欢的话 你完全可以这样做 和你交流的人不能看懂的话 那就是你表达能力的问题了
刚分配完一个内存空间,我不会叫它野指针,今天不会,以后还是不会

你会不会叫他野指针 是你个人审美问题 你随意
但这和我描述的准确性和正确性无关
你看不懂是代码阅历问题
野指针这个词遍布整个中文互联网
wild pointer这个词遍布整个互联网世界
全世界都把 没有初始化,内容为一个随机地址 的指针叫做野指针(wild pointer)
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册

后面通过赋值的形式也可以解决
我好像没说不行? 然后呢?






[此贴子已经被作者于2020-7-3 19:06编辑过]


https://zh.
2020-07-03 19:04
八画小子
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:37
帖 子:709
专家分:2063
注 册:2010-11-11
收藏
得分:0 
回复 44楼 lin5161678
我开始对你顶礼膜拜了😀😀😀😀😀
2020-07-03 19:12
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
收藏
得分:0 

The standard does not define or use the term "wild". I'd be careful "correcting" other people's opinions about what it means, and I'd especially avoid quoting random non-normative internet junk to support my position.

To me, it would mean a pointer that neither refers to a legitimate object, nor is NULL. Possible sources of these types of pointer values might include uninitialized pointer objects, objects that have ceased to exist, computed pointer values, improperly aligned pointer values, accidental corruption of the pointer itself, or what it pointed to, etc.

int main(void)
{

   int *p;  // uninitialized and non-static;  value undefined
   {
      int i1;
      p = &i1;  // valid
   }            // i1 no longer exists;  p now invalid   

   p = (int*)0xABCDEF01;  // very likely not the address of a real object

   {
      int i2;  
      p = (int*)(((char*)&i2) + 1);  // p very likely to not be aligned for int access
   }

   {
      char *oops = (char*)&p;  
      oops[0] = 'f';  oops[1] = 35;  // p was clobbered
   }
}  

梦想拥有一台龙芯3A-4000
2020-07-03 19:25
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
以下是引用ditg在2020-7-3 19:25:57的发言:


The standard does not define or use the term "wild". I'd be careful "correcting" other people's opinions about what it means, and I'd especially avoid quoting random non-normative internet junk to support my position.

To me, it would mean a pointer that neither refers to a legitimate object, nor is NULL. Possible sources of these types of pointer values might include uninitialized pointer objects, objects that have ceased to exist, computed pointer values, improperly aligned pointer values, accidental corruption of the pointer itself, or what it pointed to, etc.

int main(void)
{

   int *p;  // uninitialized and non-static;  value undefined
   {
      int i1;
      p = &i1;  // valid
   }            // i1 no longer exists;  p now invalid   

   p = (int*)0xABCDEF01;  // very likely not the address of a real object

   {
      int i2;  
      p = (int*)(((char*)&i2) + 1);  // p very likely to not be aligned for int access
   }

   {
      char *oops = (char*)&p;  
      oops[0] = 'f';  oops[1] = 35;  // p was clobbered
   }
}  

还是那句话 你不喜欢是你的审美问题
这个世界有的是人喜欢这样用
并且 这个词足够准确的描述所表达的意思
至于标准没有使用那就没有使用呗
标准没有定义使用的词多了去了
标准还没定义使用变量这个词呢 是不是也不能说指针变量了?

https://zh.
2020-07-03 19:36
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
收藏
得分:0 

以百度百科为标准,你是对的,应该承认是我水平低

梦想拥有一台龙芯3A-4000
2020-07-03 19:38
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
以下是引用ditg在2020-7-3 19:38:08的发言:


以百度百科为标准,你是对的,应该承认是我水平低

搞清楚 指针变量这样的词 按照你的逻辑 也是百度百科水平的词

https://zh.
2020-07-03 19:40
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
收藏
得分:0 

好吧,此生坛里本人禁言,说到做到

梦想拥有一台龙芯3A-4000
2020-07-03 19:41
快速回复:结构体里嵌套一个结构体数组指针
数据加载中...
 
   



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

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