【每日反刍】——指针运算
创始人
2025-05-30 05:39:41

🌏博客主页:PH_modest的博客主页
🚩当前专栏:每日反刍
💌其他专栏:
🔴 每日一题
🟢 读书笔记
🟡 C语言跬步积累
🌈座右铭:广积粮,缓称王!

一.结构体基础知识

1.题目

有如下代码:

struct student
{int num;char name[32];float score;
}stu;

则下面的叙述不正确的是:( )
A.struct 是结构体类型的关键字
B.struct student 是用户定义的结构体类型
C.num, score 都是结构体成员名
D.stu 是用户定义的结构体类型名

2.答案

D

3.分析

A:正确,在C语言中需要自定义类型时,要用到struct关键字
B:正确:在C语言中,用struct定义的结构体,定义结构体类型变量时,需要用struct student,struct student stu1={...};这段代码可以和int a=0;进行比较,struct student可以看成int,stu1可以看成a,即struct student是一种类型(结构体类型),stu1是定义的一种变量(结构体类型变量)
C:正确:结构体中的变量名称,称之为结构体的成员
D :错误:stu是定义的结构体类型变量,不是名称,如果想要让stu为结构体类型名称时,必须在结构体定义时添加 typedef关键字

结构体概念

二.结构体成员的访问

1.题目

结构体访问成员的操作符不包含:( )
A… 操作符
B.-> 操作符
C.* 解引用操作符
D.sizeof

2.答案

D

3.分析

这题选出正确答案非常简单,但我想再强调一下这几个操作符应如何使用
在这里插入图片描述

三.指针运算

1.题目

下面关于指针运算说法正确的是:( )
A.整形指针+1,向后偏移一个字节
B.指针-指针得到是指针和指针之间的字节个数
C.整形指针解引用操作访问4个字节
D.指针不能比较大小

2.答案

C

3.分析

注意:此题是有问题的,说法不严谨,如果将整形指针理解成int*类型的指针,那么一下说法解析如下
A:错误,整形指针+1,向后移动一个整形类型的大小,即4个字节
B:错误,两个指针相减,指针必须指向一段连续空间,减完之后的结构代表两个指针之间相差元素的个数
C:正确,整形指向的是一个整形的空间,解引用操作访问4个字节
D:指针中存储的是地址,地址可以看成一个数据,因此是可以比较大小的

四.结构体成员的访问

1.题目

下面程序要求输出结构体中成员a的数据,以下不能填入横线处的内容是( )

#include < stdio.h >
struct S
{ int a;int b; 
};
int main( )
{ struct S a, *p=&a;a.a = 99;printf( "%d\n", __________);return 0;
}

A.a.a
B.*p.a
C.p->a
D.(*p).a

2.答案

B

3.分析

结构体类型变量需要访问其成员时,用.运算符,如果是指向结构体变量的指针访问时,需要用->,或者先对指针解引用,取到指向的结构体类型的变量,再通过.访问,但是要注意优先级

最后

本系列主要是分享好题和错题,方便平时反刍,反复练习才能真正掌握一个知识点。

我始终相信广积粮,缓称王!

相关内容

热门资讯

逛起来!济南9个公园景区,推出... 新春将至,今年春节可以怎样嗨游济南?新黄河记者从济南市公园发展服务中心获悉,今年济南千佛山风景名胜区...
原创 广... 说起中国的宜居、养老之城,我们通常想到的都是云南的大理、昆明甚至是西双版纳,北方城市中的烟台和威海也...
马上有福游烟台!春节期间,烟台... 齐鲁晚报·齐鲁壹点 秦雪丽 通讯员 旅宣马年春节即将到来,有哪些文旅活动上演?2月13日,从烟台市文...
网红咖啡的审美狂欢下,我们是否... 上周,我被一个朋友神秘兮兮地拉进一个线上咖啡群。 群里每天热火朝天的,不是讨论耶加雪菲的水洗和日晒在...