day 13 函数指针类型
(1).有以下程序:

则正确的选项是【B】
(A).7 4
(B).4 10
(C).8 8
(D)10 10
分析:主要考求字符串的长度,strlen是专门求字符串长度的函数,但不包含‘\0’在内。
sizeof是计算变量、数组、类型的大小,计算数组时包含‘\0’.
(2).下面是有关C语言字符数组的描述,其中错误的是【D】
(A).不可以用赋值语句给字符数组名赋值字符串
(B).可以用输入语句把字符串整体输入给字符数组
(C).字符数组中的内容不一定是字符串
(D).字符数组只能存放字符串
(3).有以下程序:
void fun(int n,char *s){……}
则下午对函数指针的定义和赋值均正确的是【D】
(A).void (*pf)();pf=fun;
(B).void *pf();pf=fun;
(C).void ()(*pf);pf=fun;
(D).void (*pf)(int,char);pf=&fun;
分析:void (*)()===>函数指针类型 void (*p)(intx,inty)=print===>void(*p)(形参)=(函数名)
void (*pf)();pf=fun;错误:*pf指向的是没有形参的函数
void *pf();pf=fun;错误:pf不是一个函数指针,不符合函数指针的格式。是一个函数声明
void ()(*pf);pf=fun;错误:指针放在了形参的位置上。


以上两个函数指针的程序都可以实现
(4).有以下程序:

程序运行后的输出结构是【C】
(A).7
(B).8
(C).9
(D).10
分析;static是静态函数,只初始化一次。s=f(a)第一次进入后,n=n+a===》返回输出s=4
第二次进入,s=s+f(a),n=n+a===》n=3+2=5
因此s=9
(5).下面结构体的定义语句中,错误的是【B】
(A).struct ord{ (B).struct ord{
int x; int x;
int y; int y;
int z; int z;
};struct ord a; }struct ord a;
(C).struct ord{ (D).struct {
int x; int x;
int y; int y;
int z; int z;
}a; }a;
分析:B错误,缺失分号
A正确:先定义结构体类型,再定义结构体变量
C正确:定义结构体类型时,同时定义一个结构体变量
D正确:使用匿名结构体定义方式
(6).在E-R图中,用来表示实体联系的图形是【C】
(A).椭圆形
(B).矩形
(C).菱形
(D).三角形

但发现有一个问题:就是数组中必须是已经知道并且输入的数。如果是随机数的会出现bug【但结果是对的】(这个问题也困扰了我)


经过逐语句调试,生成的随机数确实存到了数组内。但还是出现调试错误。
day 13 函数指针类型的更多相关文章
- C++------------typedef 函数指针类型定义
摘要bycrazyhacking: typedef 是定义了一种"函数指针"类型,可以再声明很多变量.函数指针的定义是定义了一个变量. int max(int x,i ...
- c++ 自定义类型,函数指针类型
用typedef定义函数指针类型 -函数指针和函数指针数组 46课里边有如下代码 int add(int a,int b,int d) { return a+b+d; } int mul(int a, ...
- c++特性:指向类成员的指针和非类型类模板参数和函数指针返回值 参数推导机制和关联型别
一.c++允许定义指向类成员的指针,包括类函数成员指针和类数据成员指针 格式如下: class A { public: void func(){printf("This is a funct ...
- [Reprint]C++普通函数指针与成员函数指针实例解析
这篇文章主要介绍了C++普通函数指针与成员函数指针,很重要的知识点,需要的朋友可以参考下 C++的函数指针(function pointer)是通过指向函数的指针间接调用函数.相信很多人对指向一般 ...
- 【嵌入式开发】C语言 命令行参数 函数指针 gdb调试
. 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21551397 | http://www.hanshul ...
- 成员函数指针与高性能C++委托
1 引子 标准C++中没有真正的面向对象的函数指针.这一点对C++来说是不幸的,因为面向对象的指针(也叫做“闭包(closure)”或“委托(delegate)”)在一些语言中已经证明了它宝贵的价值. ...
- C语言 命令行参数 函数指针 gdb调试
. 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21551397 | http://www.hanshul ...
- 转·c语言函数指针的理解与使用
原文出处:https://www.cnblogs.com/haore147/p/3647262.html 1.函数指针的定义 顾名思义,函数指针就是函数的指针.它是一个指针,指向一个函数.看例子: 1 ...
- c语言函数指针的理解与使用(学习)
1.函数指针的定义 顾名思义,函数指针就是函数的指针.它是一个指针,指向一个函数.看例子: 1 2 3 A) char * (*fun1)(char * p1,char * p2); B) char ...
随机推荐
- [BUUCTF]PWN——pwnable_orw
pwnable_orw 附件 步骤: 例行检查,32位程序,开启了canary 本地运行一下程序,看看大概的情况,提示我们输入shellcode 32位ida载入,检索字符串,没看见什么可以直接利用的 ...
- 如何在服务器上新建一个svn的目录工程文件
如何在服务器上新建一个svn的目录工程文件
- 制作一个文档同步工具,自动同步到gitee中。。。
之所以要做这个工具是为了让自己可以随时用电脑时能记录日常工作或生活.一般只需要简单记录下就行了.这样我在家里的和公司里的记录都能同步看到. 这样后期整理的时候看到几个关键词就能想起来具体的事情,有的也 ...
- svn服务器用户名密码更改后,如何更新本地用户名密码
在提交时,IDE会给出这样的提示,说明用户名密码已更改 在命令行输入 svn ls https:XXX(项目的地址),具体步骤如下图
- 【LeetCode】412. Fizz Buzz 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目大意 解题方法 方法一:遍历判断 方法二:字符串相加 方法三:字典 日期 [L ...
- 【LeetCode】1134. Armstrong Number 解题报告(C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 直接计算 日期 题目地址:https://leetco ...
- 【LeetCode】794. Valid Tic-Tac-Toe State 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 题目地址: https://leetcode.com/problems/valid-ti ...
- 【剑指Offer】二叉树的下一个结点 解题报告(Python)
[剑指Offer]二叉树的下一个结点 解题报告(Python) 标签(空格分隔): 剑指Offer 题目地址:https://www.nowcoder.com/ta/coding-interviews ...
- JSON(JS 对象简谱,一种数据交换格式)
JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式 存储和表示数据的文本格式 层次结构清晰.简洁 JSON是一个序列化的对象或数组 1.js ...
- 响应式网页设计(Bootstrap)
Bootstrap官网 AOS官网 Chrome官方教程 Chrome教程 Bootstrap官网中有许多Bootstrap网站示例,大家可以参考