
C语言
kuniqiw
这个作者很懒,什么都没留下…
展开
-
glibc memcpy内部机制学习记录
4、剩余的不能采用word copy的尾部使用one byte by one byte进行拷贝。就为对齐之后的剩余大小了,之后的处理方式直接按照虚拟内存页的大小来加快拷贝效率。判断需要拷贝的字节数是否大于临界值(16或8)。1、先进行内存对齐。假设要拷贝的目的地址如下所示。为拷贝目的地的起始地址 ,为拷贝目的地的结束地址,为内存中的对齐边界。原创 2023-01-31 18:58:32 · 415 阅读 · 0 评论 -
命令行输入16进制字符串
setchip COMMON_CFG1 0x444224400f13ffb以上是一个写寄存器值的shell命令。十六进制的数值传递到程序中是字符串。如何将这个64位的十六进制数由字符串转为可写入寄存器的数值呢? 答案是使用接口:unsigned long int strtoull(const char *str, char **endptr, int base) 参数说明:str-- 要转换为无符号长整数的字符串。 endptr-- 对类型...原创 2021-12-27 15:38:11 · 1378 阅读 · 0 评论 -
请填写BOOL , float, 指针变量与“零值”比较的 if 语句
https://blog.youkuaiyun.com/u010648606/article/details/26068163?utm_source=blogxgwz2提示:这里“零值”可以是0, 0.0 , FALSE 或者“空指针”。例如 int 变量 n 与“零值”比较的 if 语句为:if ( n == 0 )if ( n != 0 )以此类推。(1)请写出 BOOL flag...转载 2020-02-05 17:12:49 · 3211 阅读 · 0 评论 -
c语言中赋值截断
在c语言中进行变量赋值的时候,如果将字节多的数据类型赋给一个占字节少的变量类型,会发生“截断”。发生这种情况的原因是:在赋值过程中只将占字节较长的变量的地位赋给占字节较少的变量。如:int i=345;char c=‘i';c=i;在进行c=i赋值操作时,会发生“截断”。#include<stdio.h>#include<stdlib.h>i...转载 2020-01-14 15:26:42 · 1212 阅读 · 0 评论 -
signal(SIGPIPE, SIG_IGN)
signal(SIGPIPE, SIG_IGN)2012-03-19 16:29:52|分类:HaierUbic|字号订阅当服务器close一个连接时,若client端接着发数据。根据TCP 协议的规定,会收到一个RST响应,client再往这个服务器发送数据时,系统会发出一个SIGPIPE信号给进程,告诉进程这个连接已经断开了,不要再写了。 根据信号的默认处理规则SI...转载 2019-07-09 20:35:54 · 1959 阅读 · 0 评论 -
C语言 运算符优先级
优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[整型表达式] 左到右 () 圆括号 ...原创 2019-03-08 19:21:36 · 131 阅读 · 0 评论 -
C语言笔试题总结
有优先级的高低问题就先看优先级,优先级相同就看++前置还是后置。++前置,会先自增再参加表达式运算(即取值);反之,会先参加表达式运算(即取值)再自增。 int a[5]={1,2,3,4,5};int *p = a;*p++ 先取指针p指向的值(数组第一个元素1),再将指针p自增1;cout << *p++; // 结果为 1cout <<(*p++...转载 2019-02-18 20:44:02 · 1350 阅读 · 0 评论 -
realloc函数解析
realloc(void *__ptr, size_t __size):更改已经配置的内存空间,即更改由malloc()函数分配的内存空间的大小。如果将分配的内存减少,realloc仅仅是改变索引的信息。如果是将分配的内存扩大,则有以下情况:1)如果当前内存段后面有需要的内存空间,则直接扩展这段内存空间,realloc()将返回原指针。2)如果当前内存段后面的空闲字节不够,那么就使...转载 2019-01-09 11:22:40 · 297 阅读 · 0 评论 -
assert()函数用法
assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include <assert.h>void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程...转载 2019-01-08 14:51:51 · 306 阅读 · 2 评论 -
结构体实现通讯录
#include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct node{ char name[10]; int id; char tel[15]; }node;static int count=0; //通讯录中实时用户数量//for循环遍...原创 2019-01-02 19:24:20 · 494 阅读 · 0 评论