游戏筑基开发之测试篇2(C语言)
游戏筑基开发之测试篇2
1.const的作用和例子?
修饰变量,说明该变量不可以被改变; cosnt int;
修饰指针 常量指针(cosnt int ) 指针常量(int const)
2.使用指针时发生的错误有哪些?
数组越界、空指针、野指针。
3.函数参数传递,值传递和址传递的区别
值传递和址传递,本质是一样的,都会有新的内存空间生成(在栈区)
址传递保存的是地址,可以修改函数外部的值,与实参共享同一片内存。
4.二级指针++和一级指针++有什么区别
在32位操作系统下:
二级指针自增,偏移4字节,因为它的数据类型是一个一级指针(无符号整型)
一级指针自增,偏移量为数据类型大小。
5.深拷贝和浅拷贝的区别
浅拷贝就是单纯的赋值,没有考虑指针(动态申请)的问题
深拷贝是手动实现的,考虑了指针(重新malloc一块空间赋值)的问题,一般不会使用同一片内存。
6.char(*map)[15]和int**map的区别
**char(*map)[15] 是一个数组指针,它指向一个类型为char类型且大小为15个字节的数组 ,访问方式为(*map)[0] 或者 map[0][0]。
int**map 是一个二级指针,指向int*的地址也就是指向一级指针的地址。访问方式为 *map表示一级指针,**map表示具体的实际内容。
7.联合体和结构体有什么区别
结构和联合都是由多个不同的数据类型成员组成。
联合体对不同成员赋值, 将会对其它成员重写,原来成员的值将不存在。
8.struct A{int a,char b,int c,char d,char e}和struct{int a,int c,char b,char d,char e}的区别
占用的内存大小不一样,内存对其以最大的数据类型为分割单位(以最大的数据类型对齐)。第一个占16个字节,第二个占12个字节。
9.struct A{int a,char b,int c,char d,char e} 的sizeof大小
&emsp16个字节。
示例如下:
10.用变量a 给出下面的定义
1.一个指向函数的指针,该函数有一个整型参数并返回一个整型数。
2.一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数 。
解:
- int(*a)(int);
- int(*a[10])(int); --函数指针数组
例子:
int func1(int n)
{printf("func1: %d\n", n);return n;
}
int func2(int n)
{printf("func2: %d\n", n);return n;
}
int main()
{int (*a[10])(int) = {NULL};a[0] = func1;a[1] = func2;a[0](1);a[1](2);return 0;
}
11.数组和链表的区别
数组:数据顺序存储,固定大小;
链表:数据可以随机存储,大小可动态改变;
12.堆栈溢出一般是由什么原因导致的?
没有回收垃圾资源。
13.用宏定义写出swap(x,y),即交换两数
#define swap(x, y) (x)=(x)+(y);(y)=(x)–(y);(x)=(x)–(y);
14.指针函数与函数指针的区别
指针函数是指一个返回指针类型的函数。函数指针是指一个指向函数的指针。
15.打印当前源文件的文件名和当前行
Printf(“%s %s”,__FILE__,__LINE__);
16.描述程序错误
void getmemory(char *p)
{p=(char *) malloc(100);strcpy(p,“hello world”);
}
int main( )
{char *str=NULL; getmemory(str); printf(“%s/n”,str); free(str);return 0;
} //会出现什么问题?
程序崩溃,getmemory中的malloc 不能返回动态内存,free()对str操作很危险。
17.使用2个栈实现一个队列(仅需给出思路)
实现栈的基础功能后,初始化两个栈,pv1,pv2。数据先Push到pv1中,之后Pop到pv2中,每次取数据直接Pop pv2即可。而存储数据需重新将pv2原有的数据Push到pv1中,Push新数据,然后再将pv1的数据Pop进入pv2中。
游戏筑基开发之测试篇2(C语言)相关推荐
- 【社区分享 - 游戏篇】AWS云科技助力游戏内容开发 - 游戏项目构建篇 运行篇 增长篇
[社区分享 - 游戏篇]AWS云科技助力游戏内容开发 - 游戏项目构建篇 & 运行篇 & 增长篇 文章目录 [社区分享 - 游戏篇]AWS云科技助力游戏内容开发 - 游戏项目构建篇 & ...
- 人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[0]——月晕础润
开场诗: 不儒不道又不仙,非神非圣也非贤.轻吐心头寻常语, 开辟文武一片天. 自表诗: 北冥沉渊有鲲鹏, 吞噬金乌戮真龙.一日扶摇凌天起,三千世界可横行. 小子"鹏凌三千",欲将心 ...
- 人生如梦游戏间,RPG游戏开源开发讲座 JAVA篇 4 ——一步莲华
从星期一开始一直郁闷-- 最近的状况--用迷信的说法就是犯小人,以社会学的观点是由于出现人际交往困难造成社会评价降低--无比郁闷中,继续写这个-- 上一回我们写到关于如何改变角色的移动样式及线程的初步 ...
- 人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[4]——一步莲华
从星期一开始一直郁闷-- 最近的状况--用迷信的说法就是犯小人,以社会学的观点是由于出现人际交往困难造成社会评价降低--无比郁闷中,继续写这个-- 上一回我们写到关于如何改变角色的移动样式及线程的初步 ...
- 【转】人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[4]——一步莲华
来源:http://blog.csdn.net/cping1982/article/details/1747703 从星期一开始一直郁闷-- 最近的状况--用迷信的说法就是犯小人,以社会学的观点是由于 ...
- 人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[3]——邯郸学步
书接前文,事表上回.话说上回书提到"画面闪烁问题和角色动作的变更"是目前我们所面临的两大难点之一,本次,将就解决画面闪烁的前提条件--角色动作变更,也即"动画" ...
- 【转载】人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[3]——邯郸学步
书接前文,事表上回.话说上回书提到"画面闪烁问题和角色动作的变更"是目前我们所面临的两大难点之一,本次,将就解决画面闪烁的前提条件--角色动作变更,也即"动画" ...
- 【转】人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[2]——踏破红尘
来源:http://blog.csdn.net/cping1982/article/details/1664380 "本鹏"上回书言道,Java 游戏中地图的构建是一件极其简单的事 ...
- 人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[2]——踏破红尘
"本鹏"上回书言道,Java 游戏中地图的构建是一件极其简单的事情,本次书接前文,探讨游戏中角色的移动问题. 众所周知,[角色]是一个游戏的灵魂所在,没有角色的游戏,就是没有灵魂的 ...
- 游戏开发心得——书籍篇——《游戏引擎框架》-导论
游戏开发心得--书籍篇--<游戏引擎框架>-导论 FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 简介: 学习<游戏引擎框架> ...
最新文章
- RHEL/CentOS通用性能优化、安全配置参考
- 美国公司欲联合大电脑商阻止绿坝推广
- [转] 鼠标移入/移出颜色渐变
- 图解机房空调制冷系统
- 重学C语言_数据结构与基础语法
- python知识点汇总_Python知识点总结大全(一)
- 邀请函丨云和恩墨邀您一起迈向混合数据库时代!
- C++之命名空间探究
- xgp游戏列表_Steam疯狂周三游戏推荐:动物百科全书
- SSM(Spring+SpringMVC+MyBatis):图书管理系统附有GIF动图,博主可免费答疑
- USB 2.0学习笔记1——硬件/Lenovo
- 每个 gopher 都需要了解的 Go AST
- java whois_Java实现简单whois查询
- 物理服务器安装CentOS 7操作系统
- sdiv和srem问题解决
- Linux面试必备基础知识(十一)——系统管理命令
- 10.24程序员节疑问:沈从文的编程功底应该很厉害吧?
- 利用pandas将Excel分组比较获取差集并
- 学习java必读书籍
- 什么叫磁场强度、磁通势、磁阻、导磁率、电磁力、涡流?