C/C++
记录工作学习中遇到的C/C++问题
影子浅
这个作者很懒,什么都没留下…
展开
-
内核链表 list.h
记录一下整理的关于内核链表相关函数内容一、双指针双向循环链表(list)1. 基本原理struct list_head{ struct list_head* pPre; struct list_head* pNext;};typedef struct _STU{ char cSex; char szAddress[128]; int iNumber; int iFlag; struct list_head mylist;}STU;原创 2020-10-19 21:17:23 · 202 阅读 · 0 评论 -
C语言 standard C I/O函数
针对标准C的部分I/O函数做个记录,以下函数头文件均为:stdio.h字符I/Oint fgetc( FILE *stream );int getc( FILE *stream );int getchar( void );fgetc和getc的参数是需要操作的流,前提是这个流之前已经被打开,而getchar始终从标准输入流(stdin)读取。每个函数从流中读取下一字符,并把它作为函...原创 2020-03-22 20:34:45 · 524 阅读 · 0 评论 -
C语言 被调函数修改指针形参
我们都知道,如果想在函数中修改实参的值,那么,你传递给函数的应该是这个值的地址。如果你想修改的是个指针,那么是传递指针的地址(二级指针),还是传递该指针呢?1. C语言中的函数调用讲之前,先弄清楚一些概念:主调函数,被调函数,实参,形参。void fun(int p) // p 是形参,是在fun()内使用的形式参数{ p = 12;}void fun2(int *parra...原创 2020-03-20 22:00:24 · 3661 阅读 · 1 评论 -
C语言 联合(union)
1. 联合简介联合(union)是一种数据类型,他能在同一块空间中存储不同数据类型,但不是同时存储。如果我们想设计一种结构,其能存储一些既无规律,也无顺序的数据,那么就可以用到联合。创建联合和创建结构体相同,需要声明一个模板,再用这个模板创建变量,下面给出例子:union STU{ int num; char sex; double score; char name[32];};...原创 2020-03-14 16:34:31 · 5783 阅读 · 3 评论 -
C语言 结构体的浅拷贝和深拷贝
1. 浅拷贝#include <stdio.h>#include <stdlib.h>#include <memory.h>struct STU{ char name[32]; int age; char *address;};void struct_init(struct STU* stu){ strcpy(stu->nam...原创 2020-03-14 15:42:53 · 1198 阅读 · 0 评论 -
C语言 static和extern的区别和使用
再读C Primer Plus,发现里面很多东西是第一次看的时候没有特别注意的,现将他们记录下来,所谓“温故知新”,就是这个道理。1. 对象和标识符C语言提供了多种不同的模型在内存中存储数据,而这些模型就叫做存储类别。如(int, char, int *, struct…),个人更愿意把这种存储类别形象的比喻为做蛋糕的“模具”,只要使用这个“模具”,就能在内存中“扣”出一块内存,而这个内...原创 2020-03-08 12:31:13 · 634 阅读 · 0 评论