C语言中.和->区别

能否详细说说这两个区别,求详解

C语言中.的意思是:给的是立即数地址,->的意思是:给的是指针。"."的左操作数为值,"->"的左操作数为指针。"."和"->"实际是可以合并为一个操作符的,在很多新语言中对值和指针取成员已经统一为"."了,C中保留只是一种传统的延续。

1.C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

2.尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-09-18
.是一般结构体变量访问结构体成员的操作符;而->是结构体指针变量对结构体成员访问的操作符。
第2个回答  推荐于2017-11-25
#include <stdio.h>
struct _UnionTest {
unsigned int i;
unsigned char ch[2];
};

int main() {
struct _UnionTest uniontest;
struct _UnionTest *p; //指针
p = &uniontest;

uniontest.i = 0;
uniontest.ch[0] = 1;
uniontest.ch[1] = 2;
printf("%d ", uniontest.i);
printf("%d\t%d\n", uniontest.ch[0], uniontest.ch[1]);

//指针引用
p->i = 100;
p->ch[0] = 200;
p->ch[1] = 300;
printf("%d ", uniontest.i);
printf("%d\t%d\n", uniontest.ch[0], uniontest.ch[1]);
return 0;
}

//两个区别就是在一个是普通成员引用...一个是指针引用本回答被提问者和网友采纳
第3个回答  2012-09-18
结构体变量用 . 运算符来访问结构体的成员
指向结构体的指针用->来访问其指向的结构体的成员
第4个回答  2014-05-17
->是指针指向其成员的运算符
.是结构体的成员运算符

如:
struct A
{
int a;
int b;
};

A *point = malloc(sizeof(struct A));
point->a = 1;

A object;
object.a = 1;