DemonMaster

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  C 语言

摘要:多进程和多线程原理 fork后子进程会复制父进程的task_struct结构,并为子进程的堆栈分配物理页。理论上来说,子进程应该完整的复制父进程的堆栈以及数据空间,但是2者共享正文段。 由于一般fork后面都结着exec,所以现在的fork都在用写时复制的技术,顾明思议,就是数据段,堆栈一开始并不复 阅读全文
posted @ 2020-01-12 11:35 专注的长尾狸猫 阅读(405) 评论(0) 推荐(0)

摘要:网络通讯三要素:源 目的 长度 数据传输: TCP 可靠 重传 UDP 不可靠 (视频通话) 相关函数 socket() bind() listen() accept () connect() send() recv() server.c //可接受多个客户端请求(fork) include inc 阅读全文
posted @ 2019-10-08 10:04 专注的长尾狸猫 阅读(131) 评论(0) 推荐(0)

摘要:int i; const int* p1 = &i; int const* p2 = &i; 上面两个一个意思,const主要看在* 前 * 后 ,const 在前,说面不能通过指针修改其中i的内容,而 分开看,i和p都是可分别修改的.下面还有一种 int * const p3 = &i; 这种co 阅读全文
posted @ 2019-05-24 12:07 专注的长尾狸猫 阅读(172) 评论(0) 推荐(0)

摘要:数组的缺陷 阅读全文
posted @ 2019-05-22 16:37 专注的长尾狸猫 阅读(175) 评论(0) 推荐(0)

摘要:按位运算符号 type | 含义 |: : & | 按位与 l | 按位或 ~ | 按位取反 ^|按位异或 |右移 i j i中所有的位向右移j位 所有小于int的类型, 移位以int的方式来做,结果是int 对与unsigned的类型, 左边填入0 对与signed的类型,左边填入原来的最高位(保 阅读全文
posted @ 2019-05-22 11:38 专注的长尾狸猫 阅读(653) 评论(0) 推荐(0)

摘要:printf %[flags][width][.prec][hlL]type %[]d Flag|含义 |: : | 左对齐 + | 在前面放 +或 (space) | 正数留空 0 | 0填充 width 或 prec | 含义 |: : number |最小字符数 | 下一个参数是字符数 .nu 阅读全文
posted @ 2019-05-22 09:50 专注的长尾狸猫 阅读(346) 评论(0) 推荐(0)

摘要:自定义类型(typedef) typedef int Length; 使得Length 这个名字就乐意代替int出现在变量定义和参数声明的地方了 声明新的类型的名字 新的名字是某种类型的别名 改善了程序的可读性 typedef long int64_t; typedef struct ADate { 阅读全文
posted @ 2019-05-22 09:31 专注的长尾狸猫 阅读(246) 评论(0) 推荐(0)

摘要:int main (int argc, char const argv[]) { struct date { int moth; int day; int year; }; struct date today; today.month = 07; today.day = 31; today.year 阅读全文
posted @ 2019-05-22 08:10 专注的长尾狸猫 阅读(260) 评论(0) 推荐(0)

摘要:程序当中会出现一些数字,尽量要用一些符号去表达这些数字 枚举 enum COLOR {RED, YELLOW, GREEN}; enum 枚举类型名字 {名字, .., 名字n}; 名字可忽略 大括号里面的名字,就是常量符号,它们的类型是int , 值则一次从0到n. 声明枚举时可以指定值 enum 阅读全文
posted @ 2019-05-22 07:32 专注的长尾狸猫 阅读(121) 评论(0) 推荐(0)

摘要:c语言的变量是放在内存里面的 指针 int p,q; int p,q; 两个相同,p是指针,q是int型变量,所以 是加给p并不是加给int.可以说 p 是个int并不能说p 是个int 阅读全文
posted @ 2019-05-22 07:10 专注的长尾狸猫 阅读(157) 评论(0) 推荐(0)

摘要:数组的定义 note : 数组的变量名就是地址 阅读全文
posted @ 2019-05-21 11:38 专注的长尾狸猫 阅读(148) 评论(0) 推荐(0)

摘要:代码复制是程序质量表现不良的表现 void sum(int begin, int end) { int i; int sum = 0; for ( i = begim; i 阅读全文
posted @ 2019-05-21 11:13 专注的长尾狸猫 阅读(159) 评论(0) 推荐(0)

摘要:整数 char short int long longlong 浮点数 float double longdouble 逻辑 bool 指针 自定义类型 阅读全文
posted @ 2019-05-21 10:52 专注的长尾狸猫 阅读(151) 评论(0) 推荐(0)

摘要:goto goto 标号; 标号: 跳到标号所指的地方 阅读全文
posted @ 2019-05-03 10:58 专注的长尾狸猫 阅读(422) 评论(0) 推荐(0)

摘要:break和continue break 跳出循环 continue 跳过循环这一轮剩下的语句进入下一轮 note: prime 素数 阅读全文
posted @ 2019-05-03 10:08 专注的长尾狸猫 阅读(210) 评论(0) 推荐(0)

摘要:for (i = 0;i 阅读全文
posted @ 2019-04-30 09:46 专注的长尾狸猫 阅读(3719) 评论(0) 推荐(0)

摘要:int n; scanf("%d", &n); int fact = 1; int i = 1; while ( i 阅读全文
posted @ 2019-04-30 09:40 专注的长尾狸猫 阅读(3528) 评论(0) 推荐(0)

摘要:整数的分解 一个整数是由1至多位数字组成的,如何分解出整数的各个位上的数字,然后加以计算 对一个整数做%10的操作,就得到它的个位数; 对一个整数做/10的操作,就去掉了它的个位数; 然后再对上结果做%10,就得到原来数的十位了; 一次类推。 例 int main() { int x; scanf( 阅读全文
posted @ 2019-04-30 09:12 专注的长尾狸猫 阅读(2480) 评论(0) 推荐(0)

摘要:int main() { int number ; int sum = 0; int count = 0; do { scanf(“%d”, &number ); if( number != 1) { sum += number; count ++; } } while ( number != 1 阅读全文
posted @ 2019-04-30 08:55 专注的长尾狸猫 阅读(4866) 评论(0) 推荐(0)

摘要:if if (im | 大于 = | 大于等于 3 == 6 4 ture 6 5 4 6 5 结果为1 1 4 false else 如何没有括号的情况,if else 会遵循就近原则 级联if else if if (exp1) st1; else if (exp2) st2; else st3 阅读全文
posted @ 2019-04-18 22:32 专注的长尾狸猫 阅读(576) 评论(0) 推荐(0)