![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C语言学习专栏
文章平均质量分 53
C语言基础能力提升,致力于构建一个C语言学习交流的平台,希望大家多多提意见~~
笑着的程序员
种树最好的时间是十年前,其次是现在
展开
-
【c语言多线程编程】关于pthread_create()和pthread_join()的多线程详解
pthread_join() 函数会一直阻塞调用它的线程,直至目标线程执行结束(接收到目标线程的返回值),阻塞状态才会解除。再次强调,一个线程执行结束的返回值只能由一个 pthread_join() 函数获取,当有多个线程调用 pthread_join() 函数获取同一个线程的执行结果时,哪个线程最先执行 pthread_join() 函数,执行结果就由那个线程获得,其它线程的 pthread_join() 函数都将执行失败。对于一个默认属性的线程 A 来说,线程占用的资源并不会因为执行结束而得到释放。原创 2023-04-03 20:27:48 · 1666 阅读 · 0 评论 -
华为面试题整理
华为面试题整理**只出现一次的数字 **给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?解法:要求时间复杂度O(N),空间复杂度O(1)满足上述要求的解法,目前只有位运算法:根据位运算异或的性质,可以得到以下的规律:a ^ 0 = a;a ^ a = 0;a ^ b ^ c = a ^ c ^ b;class Solution {public: int原创 2023-04-07 15:02:32 · 530 阅读 · 0 评论 -
memset函数及其用法
memset函数及其用法在前面不止一次说过,定义变量时一定要进行初始化,尤其是数组和结构体这种占用内存大的数据结构。在使用数组的时候经常因为没有初始化而产生“烫烫烫烫烫烫”这样的野值,俗称“乱码”。每种类型的变量都有各自的初始化方法,memset() 函数可以说是初始化内存的“万能函数”,通常为新申请的内存进行初始化工作。它是直接操作内存空间,mem即“内存”(memory)的意思。该函数的原型为:void *memset(void *s, int c, unsigned long n);//函数的原创 2023-04-07 14:42:28 · 220 阅读 · 0 评论