抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

版本

使用6.2.4

sds.h sds.c

内存对齐

__attribute__((__packed__))可以让编译器对结构体不进行内存对齐,详细参考

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdint.h>
#include <stdio.h>

struct __attribute__((__packed__)) sdshdr64 {
uint64_t len; /* used */
uint64_t alloc; /* excluding the header and null terminator */
unsigned char flags; /* 3 lsb of type, 5 unused bits */
char buf[];
};

struct _sdshdr64 {
uint64_t len; /* used */
uint64_t alloc; /* excluding the header and null terminator */
unsigned char flags; /* 3 lsb of type, 5 unused bits */
char buf[];
};

int main() {
printf("packed: %d\n", sizeof(struct sdshdr64));
printf("nopacked: %d\n", sizeof(struct _sdshdr64));
}
/*
gcc a.c -o a && ./a
packed: 17
nopacked: 24
*/

宏##

##后标识的字符串会被替换,然后其左右的内容加上自己会被合并到一起,编译器将其视为标识符进行解析,详细参考

nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial mysql安装可以酌情修改内存大小和交换内存大小。 12345678# filename: $HOME/data/mysql/conf/docker.cnf[mysqld]performance_s...

Mysql

查看表的定义

1
show create table table_name;

nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial DB Database 数据库 DBMS DatabaseManagementSystem 数据库管理系统 SQL Sturcture Query Language 结构化查询语言 SQL语言 不是...

nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial 游标允许我们遍历结果集 不想多说,我只是感觉好复杂 12345678910111213141516171819202122create table test(id int);delimiter //...

nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial nosql 随时大规模高并发的出现,传统关系型数据库已经碰到了很大的问题,他难以提供更快的数据访问速度了,这导致数据库成为了瓶颈。人们提出not only sql的一种理念,就是我们不能仅仅依靠关系...

查找最晚入职员工的所有信息

查找最晚入职员工的所有信息
CREATE TABLE employees (
emp_no int(11) NOT NULL,
birth_date date NOT NULL,
first_name varchar(14) NOT NULL,
last_name varchar(16) NOT NULL,
gender char(1) NOT NULL,
hire_date date NOT NULL,
PRIMARY KEY (emp_no));

我们排序以后选出最大的

1
2
3
select * from employees
order by hire_date desc
limit 0,1

找到最大值以后使用where

1
2
select * from employees
where hire_date = (select max(hire_date) from employees);