Talk:指標 (電腦科學)

维基百科,自由的百科全书
跳到导航 跳到搜索
电脑和信息技术专题 (获评高重要度)
LampFlowchart.svg 本條目属于电脑和信息技术专题范畴,该专题旨在改善中文维基百科資訊科技相关条目类内容。如果您有意参与,请浏览专题主页、参与讨论,并完成相应的开放性任务。
 未知级未评  根据质量评级标准,本條目尚未接受评级
   根据重要度评级标准,本條目已评为高重要度

若干问题[编辑]

typedef struct st
{
    double val;
    char c;
    struct st *next;
} pst;

这个数据结构的“默认”内存对齐,在32位程序环境,应该是val是8字节内存地址边界对齐,next数据成员是4字节内存地址边界对齐。所以默认情况下,c与next之间有3字节的未使用空间。

另,文中“双重指针是指向指针的指针,它是一个整数,这个整数指向某个内存地址,该地址的值是一个整数,指向给另一个内存地址”。这句话不够确切。整数如何“指向”某个内存地址?应该说:“这个整数“作为”内存地址”。“该地址的值是一个整数”,应该改为“该地址存储的值是一个整数”。。。。。。 Namemangling 2013年6月25日 15:12 (UTC)

希望精通条目相关内容的维基人帮助修改本条目[编辑]

条目中多次使用

指针其实是一个整数

的说法,尽管在C语言的大多数实现当中,指针所存储的确实是对象的地址值,但是C语言的标准从来没有规定指针所存储的只能是整数。其它如

在执行inc(&a);时,系统在内存分配表里增加了一行“val@inc”

编译器把结构体的大小规定为结构体成员中大小最大的那个类型的整数倍

等说法也是不准确或根本就是错误的。此外

**p的值为多少?

等不符合百科全书的风格。目前看来,或许需要大面积重写。 --D41D8CD98F00B204E9800998ECF8427E 2013年6月28日 (五) 11:22 (UTC)