- 博客(5)
- 收藏
- 关注
原创 C/C++ I/O详解
一、C语言I/OC语言的I/O相关函数都是封装在头文件<stdio.h>中,该头文件中定义了一些变量、宏以及各种函数来执行输入输出。具体有关C标准库<stdio.h>参见:http://www.runoob.com/cprogramming/c-standard-library-stdio-h.html注意:C语言把所有的设备都当做文件(设备只是一种特殊的文件),所以所有设...
2018-06-28 14:04:03 3751
原创 python之GIL与多线程
1、问题的思考——python程序能通过多线程利用CPU的多核吗?先看一段程序下面这段 python 代码,CPU 占用率是多少?# 请勿在工作中模仿,危险:)def dead_loop(): while True: passdead_loop()答案是什么呢,占用 100% CPU?那是单核!还得是没有超线程的古董 CPU。在我的双核 CPU 上,这个死循环只会吃掉...
2018-06-16 16:59:11 961
原创 C语言中的restrict限定符
今天在写opencl的kernel端代码时用到了restrict关键字,做个记录。restrict限定符的作用C语言中的一种类型限定符,用于告诉编译器,对象已经被指针所引用,不能通过除去该指针以外的所有其他直接或间接的方式修改该对象的内容restrict限定符的用法restrict关键字允许编译器优化某部分代码以更好地支持计算。它只能用于指针,表明该指针是访问该对象唯一且初始的方式。要弄明白为什么...
2018-06-15 12:42:38 2749 1
原创 vim之实现函数/变量跳转功能
使用vim的时候, 会发现函数跳转的功能没有,怎么办?vim提供了强有力的函数跳转的插件功能!首先要安装ctags, 在ubuntu下直接输入sudo apt-get install exuberant-ctags接着,在源文件目录树(这里是在/home/ballack/test/目录下)执行如下命令:ctags -R .即可在/home/ballack/test目录下生成一个tags文件, 这个...
2018-06-13 12:23:28 2738
转载 C++模板元编程
所谓的元编程就是编写直接生成或操纵程序的程序,C++模板为C++语言提供了元编程的能力。模板使 C++ 编程变得异常灵活,能实现很多高级动态语言才有的特性(语法上可能比较丑陋,一些历史原因见下文)。普通用户对 C++ 模板的使用可能不是很频繁,大致限于泛型编程,但一些系统级的代码,尤其是对通用性、性能要求极高的基础库(如 STL、Boost)几乎不可避免的都大量地使用 C++ 模板...
2018-06-13 09:42:22 10263 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人