试题详情
- 简答题sprintf,strcpy,memcpy使用上有什么要注意的地方。
-
1)sprintf是格式化函数。将一段数据通过特定的格式,格式化到一个字符串缓冲区中去。sprintf格式化的函数的长度不可控,有可能格式化后的字符串会超出缓冲区的大小,造成溢出。
2)strcpy是一个字符串拷贝的函数,它的函数原型为strcpy(char *dst, const char *src将src开始的一段字符串拷贝到dst开始的内存中去,结束的标志符号为 ‘/0’,由于拷贝的长度不是由我们自己控制的,所以这个字符串拷贝很容易出错。
3)memcpy是具备字符串拷贝功能的函数,这是一个内存拷贝函数,它的函数原型为memcpy(char *dst, const char* src, unsigned int len);将长度为len的一段内存,从src拷贝到dst中去,这个函数的长度可控。但是会有内存叠加的问题。 关注下方微信公众号,在线模考后查看
热门试题
- 简述死锁的处理
- 简述iOS的系统架构
- 简述线程与进程的区别和联系?
- 简述代理的作用?
- 什么是NSManagedobjectCo
- 一个参数既可以是const还可以是vol
- 简述通知和协议的不同之处?
- 对于语句NSString*obj = [
- 你了解svn,cvs等版本控制工具么?
- 什么是沙盒模型?哪些操作是属于私有api
- 请简要说明viewDidLoad和vie
- 在项目什么时候选择使用GCD,什么时候选
- 如何使用Xcode设计通用应用?
- 什么是NSManagedObject模型
- #import跟#include 又什么
- 属性readwrite,readonly
- 内存管理的几条原则时什么?按照默认法则.
- 什么是push?
- xib文件的构成分为哪3个图标?都具有什
- 谈谈Object-C的内存管理方式及过程