`
xiang37
  • 浏览: 415070 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

C语言相关知识笔记

 
阅读更多

一、gcnew与new的区别

C /CLI中使用gcnew关键字表示在托管堆上分配内存,并且为了和以前的指针区分,用^来替换* ,就语义上来说他们的区别大致如下:

 

  1. gcnew返回的是个句柄(Handle),而new返回的是实际的内存地址. 

  2. gcnew创建的对象由虚拟机托管,而new创建的对象必须自己来管理和释放.

 

二、fflush(stdin)

清空输入缓冲区,通常是为了确保不影响后面的数据读取(例如在读完一个字符串后紧接着又要读取一 个字符,此时应该先执行fflush(stdin);)

 

三、scanf()与getChar()的区别

前者没有'/0'结尾符,而后者有。

 

二、strcpy_s与strcpy

前者属于系统安全函数,是以字节为单位的参数,它用来确认缓冲区大小。

strcpy没有方法来保证有效的缓冲区尺寸,所以它只能假定缓冲足够大来容纳要拷贝的字符串。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics