原创
2021-10-19 17:09:44
268阅读
//数组作为参数时,函数调用传入数组名即可#import "Function.h"int var = 10; //全局变量,在所有函数中都可以访问.程序运行期间空间不回收.//变量 x y 是在函数内部定义的变量,只能在函数内部有效,在函数之外,就无法访问,所以叫做局部变量,(当函数调用时,为变量开辟空间,当函数结束之后,回收空间.)int maxValue (int x ,int y
原创
2014-07-27 21:40:52
338阅读
1、 #include <stdio.h> int main(void) { FILE *fp; int ch; char filename[FILENAME_MAX]; printf("please input filename: "); scanf("%s", filename); if((fp
转载
2021-06-08 22:50:00
126阅读
redis虽说是用C语言开发的,但是redis考虑了性能、安全性、效率性、功能等要,redis底层存储字符串实现,自己实现了名为简单动态字符串(Simple dynamic string)简称SDS的结构来存储字符串,这个结构有int len(当前字符串长度), int free(未使用的字符串长度可以说是缓冲), char buf[](存储的字符串数组)这几个变量。 接下
转载
2024-06-21 12:41:47
20阅读
调试
原创
2021-09-02 10:58:15
176阅读
点赞
冒泡排序void bubble_sort(int arr[], int sz)
{
int c = 0;
int i = 0;
int j = 0;
int a = sz;
for (j = 0; j < sz - 1; j++)
{
int k = 1;//假设数组已近排序好了
for (i = 0; i < a - 1; i++)
{
原创
2023-07-22 23:52:48
37阅读
Redis的数据类型有string、list、set、zset、hash,那么这些数据类型底层如何实现的呢? Redis是用C语言写的,底层数据结构包括六种:动态字符串、链表、字典、跳跃表、整数集合和压缩列表。1、动态字符串struct sdshdr{
//记录buf数组中已使用字节的数量
//等于 SDS 保存字符串的长度
int len;
//记录 bu
转载
2023-08-16 17:02:40
88阅读
1、描述KiKi开始学习英文字母,BoBo老师告诉他,有五个字母A(a), E(e), I(i), O(o),U(u)称为元音,其他所有字母称为辅音,请帮他编写程序判断输入的字母是元音(Vowel)还是辅音(Consonant)。输入描述:多组输入,每行输入一个字母。输出描述:针对每组输入,输出为一行,如果输入字母是元音(包括大小写),输出“Vowel”,如果输入字母是非元音,输出“Consona
原创
2021-12-28 01:04:22
291阅读
1、【[Error] 'm' redeclared as different kind of symbol】 C语言中出现以下报错:【[Error] ‘m’ redeclared as different kind of symbol】改正方法:对一个变量,只能声明一次,多次声名,就算声明类型相同,也是错误的。而函数中,可以直接在 “函数原型” 中声明。例如:写一个求素数函数int
转载
2023-07-09 23:38:24
963阅读
c语言中的read和write函数读函数read
ssize_t read(int fd,void *buf,size_t nbyte) read函数是负责从fd中读取内容.成功时,read返回实际所读的字节数,如果返回的值是0,表示已经读到文件的结束了.小于0表示出现了错误.如果错误为EINTR说明读是由中断引起的, 如果
转载
2023-05-25 15:21:32
197阅读
1、速度快 Redis是用C语言实现的; Redis的所有数据存储在内存中。 2、持久化 Redis的所有数据存储在内存中,对数据的更新将异步地保存到磁盘上。 3、支持多种数据结构 Redis支持五种数据结构:String、List、Set、Hash、Zset 4、支持多种编程语言 Java、php、Python、Ruby、Lua、Node.js 5、功能丰富 除了支持五种数据
转载
2023-05-29 14:45:37
132阅读
C++学习记录:C++连接Redis数据库 之前学习了Redis数据库相关的内容,但是并没有在编写C++代码中用到Redis相关内容。 本篇笔记记录了个人在 Linux 环境下使用 C++ 连接 Redis 数据库的过程。实现了一个简单的排行榜功能。 由于现在的主流是使用 java 连接 redis,所以在网上查询 C语言 的API消耗了一部分时间,在本篇笔记中,我将记录相关数据结构和A
转载
2023-07-05 13:14:22
114阅读
一、概述Redis作为一个分布式缓存实现,相对于Memecache,除了支持持久化之外,一个重要的特性是Redis支持丰富的数据类型,即Memecache只支持字符串类型,所有键值对都是字符串类型,而Redis的值支持字符串,列表,字典,集合,有序集合五种类型,故可以提供更加丰富的操作。Redis的每种数据类型都支持多种底层数据结构实现,即每种数据类型并不是绑定为一种数据结构的,而是可以多种。这种
转载
2023-07-01 18:25:50
66阅读
在使用C语言进行Redis操作时,用户在特定场景下遇到了性能瓶颈和连接超时的问题。本文将详细记录解决“C语言 Redis”问题的过程,包括问题背景、错误现象、根因分析、解决方案、验证测试、以及预防优化。
在一种应用场景中,我们的系统需要频繁地与Redis进行数据交互,由于性能担忧,开发团队决定使用C语言开发相应的底层接口,直接与Redis服务器进行通信。
```mermaid
flowchar
简单动态字符串SDS概述SDS定义兼容部分C字符串函数特性常数复杂度获取字符串长度杜绝缓冲区溢出减少修改字符串时带来的内存重新分配次数空间预分配惰性空间释放二进制安全 概述Redis底层由C语言实现, 但Redis并没有直接使用C语言的字符串, 而是自己构建了一种名为 SDS ( Simple Dynamic String ) 简单动态字符串来作为其字符串的数据结构.在Redis中, C语言的字
转载
2024-02-23 10:21:43
44阅读
1、string类型使用场景计数,如点赞数、限制请求次数、pv/uv等作为key-value缓存基础数据存储session,以实现分布式下的共享session2、数据结构redis为c语言编写的,但是c语言没有String类型,只有cha[]类型,而且char数组在初始化的时候指定完大小后就不能再改变了。基于此,redis维护了一个自己的数据结构——SDS(Simple Dynamic Strin
转载
2023-08-02 12:28:52
88阅读
开发语言现在我们都用高级语言来编程,比如Java、python等。也许你会觉得C语言很古老,但是它真的很有用,毕竟unix系统就是用C实现的,所以C语言是非常贴近操作系统的语言。Redis就是用C语言开发的,所以执行会比较快。纯内存访问Redis将所有数据放在内存中,非数据同步正常工作中,是不需要从磁盘读取数据的,0次IO。内存响应时间大约为100纳秒,这是Redis速度快的重要基础。先看看CPU
转载
2023-09-11 15:48:06
145阅读
在编码过程中会经遇到数学运算,幸运的是C语言提供了非常丰富的数学函数库。在数学中使用函数有时候书写可以省略括号,而C语言要求一定要加上括号,例如sin(pi/2)这种形式。在C语言的术语中,pi/2是参数,sin是函数,sin(pi/2)是函数调用。函数调用也是一种表达式。这个表达式由函数调用运算符(也就是括号)和两个操作数组成,操作数sin称为Function Designator,是函数类型的
原创
2021-07-13 17:25:41
687阅读
1.putchar和getchar:单字符输入输出a)putchar:带入一个整数,输出一个形状(参照ASCII编号表)。这个整数可以是100,105,66等,也可以是'x','#'这些整数。2.puts和gets:一串输入输出a)gets从c++网站上看也说不安全。微软编译器强制使用gets_s3.short、long、int三个类型的历史a)在早期c语言中变量的定义:int类型等价于short
原创
2023-03-08 22:03:53
169阅读
一、什么是c语言1 人和计算机交流的语言成为计算机语言,而计算机语言中包括了C、C++、JAVA...等很多语言,C语言是面向过程的抽象化通用设计语言,与c++,java面向对象的编程语言不同,C语言广泛应用于底层开发,其中c语言的编译器有Clagg(苹果出的编译器)、Gcc(linux系统上的一个编译器)、msvc(是vs的编译器)了解一下。二、第一个C语言程
转载
2023-08-31 20:29:41
54阅读