3 江南、董少

尚未进行身份认证

我要认证

C/C++/Linux/网络编程/网络安全

等级
TA的排名 343

Lua:05---string字符串类型:lua字符串的使用、字符串标准库、Unicode标准库

一、Lua字符串介绍Lua语言中的字符串是一串字节组成的序列。在Lua语言中,字符使用8个比特位来存储 Lua语言中的字符串可以存储包括空字符在内的所有数值代码,这意味着我们可以在字符串中存储任意的二进制数据 我们也可以使用任意一种编码方式(UTF-8、UTF-16等)来存储Unicode字符串(在文章下面会详细介绍)二、字符串常量我们可以使用一对双引号或者单引号来声明字符串常量。例如:a = "a line"ab = 'another line'b双引号和单引号声明字符串是等

2020-08-11 23:24:24

Lua:04---number数值类型:interger、float、算术运算/关系运算/运算符优先级、math数学库、interger与float的转换

一、Lua数值类型发展在Lua 5.2及之前的版本中,所有的数值都以双精度浮点格式表示 从Lua 5.3版本开始,Lua语言为数值格式提供了两种选择: 整型值:称为interger的64位整型 浮点型值:称为float的双精度浮点类型 二、数值常量表示下面是一些合理的数值常量表示:40.4其中还可以使用科学记数法: 格式为一个可选的十进制部分外加一个可选的十进制指数部分) 科学记数法最终是一个浮点数 4.57e-30.3e125E+20三、类

2020-08-11 16:20:26

Lua:03---Lua数据类型(附加逻辑运算符)

一、Lua数据类型汇总Lua语言是一种动态类型语言,在这种语言中没有类型定义,每个值都带有其自身的类型信息 Lua有8种基本类型: nil:空 boolean:布尔 number:数值 string:字符串 userdata:用户数据 function:函数 thread:线程 table:表 使用type()函数可以获取一个值对应的类型名称,该函数的返回值为string类型:type(nil)type(true)type(10.4*3)type("Hel

2020-08-11 13:16:00

Lua:02---Lua语法命名规范、;号的使用、Lua注释、Lua全局变量

一、Lua语法命名规范Lua语言对大小写是敏感的标识符命名规则Lua语言中的标识符(或名称)可以由:任意字母、数字、下划线组成,但是不能以数字开头 例如下面都是符合规则的命名ii10_ijaSomeWthaLongName其中以“下划线+大写字母”组成的标识符通常被Lua语言用作特殊用途,应该避免使用。例如:_VERSIONLua的保留字下面是Lua语言的保留字,不能用作标识符二、分号的使用在Lua语言中,分号的使用是可选的 例如,下面的使用都

2020-08-11 10:59:52

Lua:01---Lua语言介绍、运行Lua程序(lua解释器)

一、Lua语言介绍Lua语言从一开始就被设计为能与C/C++及其他常用语言开发的软件集成在一起使用的语言,这种设计带来了非常多的好处: 一方面, Lua语言不需要在性能、与三方软件交互等C语言已经非常完善的方面重复“造轮子”,可以直接依赖C语言实现上述特性,因而Lua语言非常精简 另一方面,通过引入安全的运行时环境、自动内存管理、良好的字符串 处理能力和可变长的多种数据类型, Lua 语言弥补了C语言在非面向硬件的高级抽象能力、 动态数据结构、鲁棒性、调试能力等方面的不足 Lua语言强大的

2020-08-11 10:34:43

网络云盘项目:06---HTTP接口介绍、功能介绍、服务端/客户端代码解析

本项目分为6篇博客文章完成: 1.项目总体介绍:https://blog.csdn.net/qq_41453285/article/details/107871393 2.Redis部署、MySQL部署、MySQL表设计:https://blog.csdn.net/qq_41453285/article/details/107871620 3.FastDFS部署:https://blog.csdn.net/qq_41453285/article/details/107874068 4.Ngin

2020-08-09 16:49:15

网络云盘项目:05---服务端部署、客户端部署、演示运行效果

一、服务端部署第一步:到Github中(https://github.com/dongyusheng/cloud-disk)将服务端的代码下载下来放到ubuntu中,如下图所示(只需要server目录就行了)把服务端代码下载之后,还需要修改一些地方 第二步:修改conf/目录下的cfg.json文件 redis:配置redis服务端的IP和地址 mysql:添加MySQL的相关信息,并且database设置为我们之前创建的colud_disk dfs_path:因为我们的服务端程序调用

2020-08-09 13:53:21

网络云盘项目:04---Nginx配置(配置Nginx访问FastCGI、FastDFS)

本项目分为7篇博客文章完成: 1.项目总体介绍:https://blog.csdn.net/qq_41453285/article/details/107871393 2.Redis部署、MySQL部署、MySQL表设计:https://blog.csdn.net/qq_41453285/article/details/107871620 3.FastDFS部署:https://blog.csdn.net/qq_41453285/article/details/107874068 4.Ngin

2020-08-09 13:44:35

网络云盘项目:03---FastDFS集群部署

本项目分为7篇博客文章完成: 1.项目总体介绍:https://blog.csdn.net/qq_41453285/article/details/107871393 2.Redis部署、MySQL部署、MySQL表设计:https://blog.csdn.net/qq_41453285/article/details/107871620 3.FastDFS部署:本文介绍的 一、安装fastdfs可以通过下载FastDFS的源码包来编译安装FastDFS FastDFS的安装就不详细介绍

2020-08-09 13:43:17

网络云盘项目:02---Redis部署、MySQL部署、MySQL表设计

本项目分为7篇博客文章完成: 1.项目总体介绍:https://blog.csdn.net/qq_41453285/article/details/107871393 2.Redis部署、MySQL部署、MySQL表设计:本文介绍 一、本文目的本文配置整个项目中的Redis与MySQL,并且对MySQL中的数据表进行设计二、Redis部署Redis的安装Redis的安装比较容易,可以参阅:https://blog.csdn.net/qq_41453285/article/det

2020-08-09 13:41:22

网络云盘项目:01---项目总体介绍

一、项目介绍本项目是一个类似于百度云盘的项目 Github开源链接:二、项目架构图Qt充当网络云盘的客户端,支持对文件的上传、下载、删除、共享等 后端使用Nginx充当代理服务器,将Qt客户端发送过来的请求转发给后台的FastCGI进行进行处理 FastCGI对Nginx转发过来的请求进行解析处理 FastDFS集群中storage节点保存着客户端的文件 Redis保存着客户端的信息(token)等 MySQL保存着文件的信息三、项目包含的技术项目包含的技术大概有: Qt

2020-08-09 13:33:17

面试冲刺:49---死锁是怎么产生的?死锁如何预防?如何避免死锁?死锁如何检测?死锁如何解除?

一、死锁产生的原因下面是死锁产生的必要条件(4个,缺一不可): 互斥:资源不能被共享,只能由一个进程使用 请求与保持:已经得到资源的进程可以再次申请新的资源 不可剥夺:已经分配的资源不能从相应的进程中被强制地剥夺 循环等待:系统中若干进程组成环路,该环路中每个进程都在等待相邻进程正占用的资源 二、死锁预防破坏互斥条件:就是在系统里取消互斥、若资源一般不被一个进程独占使用,那么死锁是肯定不会发生的,但一般“互斥”条件是无法破坏的。因此,在死锁预防里主要是破坏其他三个必要条件,而

2020-08-06 13:42:54

面试冲刺:48---Redis的集群模式是如何实现的呢?

一、Redis集群Redis Cluster是Redis的分布式解决方案,在3.0版本正式推出,有效地解决了Redis分布式方面的需求 当遇到单机内存、并发、流量等瓶颈时,可以采用Cluster架构方案达到负载均衡的目的二、槽分配Redis Cluser采用虚拟槽分区,所有的键根据哈希函数映射到0~16383整数槽内三、集群的搭建内容太多了,详情请参阅:https://blog.csdn.net/qq_41453285/article/details/106451296四、集群通

2020-08-06 11:32:28

面试冲刺:47---Redis的哨兵模式是如何实现的呢?

一、Redis哨兵模式Redis的哨兵模式(Sentienl)是为了解决复制中的问题: 在“Redis复制”架构中,如果主节点出现了故障,那么, 就需要手动将一个从节点晋升变为主节点,这个过程需要人工干预,比较麻烦 主节点的写能力受到单机的限制 主节点的存储能力受到单机的限制 Redis哨兵模式的出现是为了解决上面出现的问题,从而提供: Reids的高可用 监控各个节点 能够实现自动故障转移 RedisSentinel的功能有: 监控:Sentinel节点会定期检

2020-08-06 11:21:37

面试冲刺:46---Redis的复制是如何实现的呢?

一、Redis复制介绍Redis复制的语法详情可以参阅: https://blog.csdn.net/qq_41453285/article/details/106151825 https://blog.csdn.net/qq_41453285/article/details/106151899 https://blog.csdn.net/qq_41453285/article/details/106160219 为了解决分布式系统中单点的问题,Redis提供了复制,通过创建一个主服务

2020-08-06 11:03:19

面试冲刺:45---Redis的持久化有哪几种方式?优缺点是什么?

一、Redis持久化持久化就是为了把Redis内存中的数据持久化保存到硬盘中,防止数据的丢失 Redis提供了两种持久化方式 RDB持久化 AOF持久化 二、RDB持久化关于RDB持久化,详情还可以参阅:https://blog.csdn.net/qq_41453285/article/details/106106568触发方式RDB持久化的触发有两种方式:手动触发与自动触发 手动触发: 通过执行save命令或者bgsave命令 save命令已经启用了,因为save会将当

2020-08-06 10:22:01

面试冲刺:44---fork()与vfork()有哪些特点?区别是什么?写时复制是什么?

一、fork详情还可以参阅:https://blog.csdn.net/qq_41453285/article/details/103743246接口语法用来创造一个子进程 在子进程中,成功的fork调用会返回 0。在父进程中fork返回子进程的 pid。如果出现错误,fork返回一个负值成功调用fork会创建一个新的进程,它几乎与调用fork的进程一模一样,这两 个进程都会继续运行 最常见的fork用法是创建一个新的进程,然后使用exec载入二进制映像,替换当前进程的映像。这种情况下

2020-08-06 00:01:36

面试冲刺:43---进程调度的策略有哪些?

一、先来先服务(FCFS)是一种最简单的调度算法 规则为:每次调度是从进程队列中选择一个最先进入该队列的进程,为之分配资源投入运行。该进程一直运行完成或发生某事件而阻塞后才继续处理后面的进程二、优先级调度有短进程优先级、高优先权优先级、高响应比优先级等,按照优先级来执行就绪进程队列中的调度 备注:高响应比 = (等待时间 + 服务运行时间) / 服务运行时间三、时间片轮转调度系统还是按照先来先服务调度就绪进程,但每次调度时,CPU都会为队首进程分配并执行一个时间片(几ms~百 ms

2020-08-05 23:50:41

面试冲刺:42---虚拟地址、逻辑地址、线性地址、物理地址是什么意思?各个地址之间是如何转换的?

Linux系统中的物理存储空间和虚拟存储空间的地址范围分别都是从0x00000000到0xFFFFFFFF,共4GB,但物理存储空间与虚拟存储空间布局完全不同 Linux运行在虚拟存储空间,并负责把系统中实际存在的远小于4GB的物理内存根据不同需求映射到整个4GB的虚拟存储空间中 Linux主要工作在保护模式下。80X86从逻辑地址到物理地址变换中经过了两个阶段: 第一阶段使用分段机制把程序的逻辑地址变换成处理器可寻址内存空间(称为线性地址空间)中的地址 第二阶段的分页机制把线性地址转换成物理地址

2020-08-05 23:39:59

面试冲刺:41---分页与分段是什么?它们的区别是什么?

一、分页、分段的发展历史在分段这个技术还没有出现之前,程序运行是需要从内存中分配出足够多的连续的内存,然后把整个程序装载进去。举个例子,某个程序大小是10M,然后,就需要有连续的10M内存空间才能把这个程序装载到内存里面。如果无法找到连续的10M内存,就无法把这个程序装载进内存里面,程序也就无法得到运行直接把整个程序装载进内存的方式是有一定的问题的①地址空间不隔离:举个例子,假设我有两个程序,一个是程序A,一个是程序B。程序A在内存中的地址假设是0x00000000~0x00000099,程序B

2020-08-05 23:11:14

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证(专家版)
    技术圈认证(专家版)
    博客专家完成年度认证,即可获得
  • 推荐红人
    推荐红人
    发布高质量Blink获得高赞和评论,进入推荐栏目即可获得
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 1024超级勋章
    1024超级勋章
    授予原创文章总数达到1024篇的博主,感谢你对CSDN社区的贡献,CSDN与你一起成长。
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享宗师
    分享宗师
    成功上传21个资源即可获取