前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >我的世界Java版开服教程(Ubuntu)

我的世界Java版开服教程(Ubuntu)

作者头像
Magneto
发布于 2022-09-14 08:27:20
发布于 2022-09-14 08:27:20
6K00
代码可运行
举报
文章被收录于专栏:春花秋月春花秋月
运行总次数:0
代码可运行

Linux开服也很简单,内存占用小,推荐使用,下面使用Ubuntu18.04.1演示

没有正版账号一样可以玩

基岩版协议UDP,默认端口19132 Java版协议TCP,默认端口25565

我的世界中文站:https://www.mcbbs.net/,插件,mod,整合包都有 minebbs:https://www.minebbs.com/ mod百科:https://www.mcmod.cn/ mc导航网:https://www.mcnav.net/ 面板服:https://mcsmanager.com/

启动器(内含各版本) pcl2启动器:https://afdian.net/p/0164034c016c11ebafcb52540025c377 hcml启动器:https://hmcl.huangyuhui.net/ 官方启动器:https://www.minecraft.net/zh-hans/download/alternative

在Minecraft服务端中,最重要的部分就是服务端核心,核心通常有以下几类: Minecraft原版核心 Minecraft纯插件核心 Minecraft纯MOD核心 Minecraft插件MOD混合核心

插件是一些能帮助服主完成管理工作的额外组件,它不需要再客户端安装 相比于插件,MOD则是需要在服务端和客户端同时添加才能够使用,单独在服务端添加客户端将无法进入服务器,单独在客户端添加,能进入服务器,但MOD将不会起到作用(辅助类另说,如小地图,顶部显示物品,Xray透视等,这里仅指个人功能类)

目前我的世界Java版主流服务端有:(还有一些我没了解到的就不列出来了)

核心名称

描述

地址

原版服务端

官方服,即纯净服,无法添加插件,安装forge后可以添加Mod,可自定义内容少

https://mcversions.net/

Bukkit/CraftBukkit(水桶服)

比较原始的插件服务端,并不支持添加Mod,但可以添加Bukkit插件它能使用CraftBukkit插件但它对Spigot插件兼容性比较差,它只能加CraftBukkit插件和Spigot的部分插件

https://getbukkit.org/download/craftbukkit

Spigot(水龙头)

Spigot对Bukkit进行了优化,支持添加Bukkit插件,但不支持添加Mod,稳定性良好

https://getbukkit.org/download/spigot

Paper(纸龙头)

Paper对Spigot进行了优化,支持 CraftBukkit 和 Spigot 插件,但不支持添加Mod,再带TPS优化,在1.9.x之前的版本的核心自带反作弊功能,1.9.x后被移除

https://papermc.io/

MCPC+

可以安装Mod及Bukkit插件,优化鸡肋。仅支持JAVA7运行,最高支持版本1.7.10

https://sourceforge.net/projects/cauldron-unofficial/files/old_releases/version_1/

KCauldron(KC端)

KC端,可以安装Mod及Bukkit插件,比MCPC+,Cauldron,Thermos优化了一波,吃内存并不多了,但最高支持版本仅到1.7.10

https://sourceforge.net/projects/kcauldron/

Thermos(水瓶端)

是KCauldron的优化版本,比原先的Cauldron更加稳定能添加MOD也能添加Bukkit插件,最高支持版本1.7.10

https://cyberdynecc.github.io/Thermos/install

Contigo(水杯端)

是Thermos的儿子,进行了大多优化,服务器滞后优化,多线程进行运算,更低的延迟更好的世界防护 (Forge调用的物品不经过Bukkit插件!)

https://github.com/djoveryde/Contigo

Uranium(铀端)

是KC的优化版本,多线程进行运算,效率更高,支持Bukkit插件和ForgeMOD ,最高支持版本1.7.10

https://www.uraniummc.cc/

Catserver(猫端)

国人开发的一代神端,支持ForgeMOD和Bukkit/Spigot插件,并且优化了多线程,1.12.2版本

https://catmc.org/

mohist(墨端)

既可以加入mods又可以加入插件,兼容paper的一些插件支持,不需要多大的服务器即可运行,并且自带多线程,比较多插件不支持,部分mods不支持

https://mohistmc.com/

Arclight(海螺端)

既可以加入mods又可以加入插件,服务器网络环境不太好,下载必备库比较累

https://github.com/IzzelAliz/Arclight/releases

magma

基于Forge和CraftBukkit的1.12.2服务器,使用Forge的mod和Bukkit插件,后续会支持1.14&1.15

https://magmafoundation.org/

Sponge Forge(海绵端)

拥有自己的插件体系,在1.8及以上版本能做到Mod与Sponge插件的共同使用

https://www.spongepowered.org/

Sponge Vanilla(海绵香草端)

支持Sponge插件,不支持ForgeMOD ,占用内存少,配置需求低

https://www.spongepowered.org/

Glowstone(萤石)

一个完全开源的服务端,支持Bukkit插件。版本为1.12.2,中文介绍 https://www.mcbbs.net/thread-926208-1-1.html

https://www.glowstone.net/

java下载(镜像站):

内用户建议使用镜像站下载(建议使用编程宝库,是我觉得比较全的) 编程宝库:http://www.codebaoku.com/jdk/jdk-index.html injdk:https://www.injdk.cn/ 清华大学镜像站:https://mirrors.tuna.tsinghua.edu.cn/Adoptium

mc版本以及对应的Java版本:

1.7.X —— jdk8 1.8.X —— jdk8/11 1.12.X —— jdk8/11 1.16.X —— jdk16/11 1.17.X —— jdk16以上 1.18.X—— jdk17

Ubuntu可以直接用apt仓库安装jdk

下面就以catserver端来开服演示:

猫端是我第一个开服所用的端,也是我觉得挺不错的端,虽然猫端有过一段黑历史,但丝毫不影响我的使用。众所周知mod最繁荣的两个版本1.7.10和1.12.2版本,新版本内容丰富点,所以我直接选择了catserver(注意:每个版本和每个核心都有自己的存在意义,不要诋毁其他的服务端来吹捧自己的选择)

简单的教程:

命令安装JDK8,命令下载catserver,命令启动

详细教程:

1.准备服务器:

服务器(Linux系统Ubuntu、Debian、centos都行)需要你自己准备(我建议用服务器,因为24小时全天运行,且稳定)使用官方推荐Ubuntu开服,我这里使用的是Ubuntu18.04.1版本

2.放行端口:

根据的服务端的协议选择协议(比如说Java版为tcp协议),Java版的默认端口是25565,有些Ubuntu会开着防火墙的,可以直接关掉也可以选择端口放行(下文会介绍如何操作)

默认登录账号是Ubuntu

# 查看当前防火墙状态,inactive是关闭状态 active是开启状态。【centos:firewall-cmd --state

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo ufw status

# 关闭防火墙(如果没有开启就不用执行),【centos:systemctl stop firewalld

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo ufw disable

# 查看apt库都有哪些jdk版本,【centos:yum search java|grep jdk

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
apt-cache search java|grep jdk

# 安装Java环境,需要再次输入y确认,【centos:yum install java-1.8.0-openjdk

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo apt-get install openjdk-8-jdk

请查看 转载后记 部分,有对 Java 环境版本的推荐,这里不推荐安装OpenJDK8

# 查看jdk是否安装成功

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
java -version

# 创建一个空目录 (cat是目录名字,可以随意)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mkdir /home/ubuntu/cat

# 进入目录

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd /home/ubuntu/cat

# 下载开服包,打开catserver官网,获取下载链接,【centos:yum -y install wget】

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wget https://luohuayu.coding.net/p/CatServerRes/d/CatServerRes/git/raw/master/serverjar/CatServer-a8b73e9-universal.jar

# 先运行一次,下载必要文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
java -jar CatServer-a8b73e9-universal.jar

# catserver端忽略这步 官方开服包第一次运行的话会生成一个 eula.txt 输入 vim eual.txt 接着按 i 键进入编辑模式,把 eula=falsefalse 改成 true 接着按esc键 再输入:wq回车(冒号别漏)

# 输入stop回车,停止运行

# 关闭正版验证,在 server.properties 文件里的 online-mode=true 中的 true 改成 false 我学过一点Linux基础,所以更偏向直接用命令修改(速度快效率高),当然可以选择安装宝塔面板,可视化文件管理,适合小白

# 先介绍直接用命令修改,可以按tab键补全

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vim /home/ubuntu/cat/server.properties

# 按i键或者 ins 键进入编辑模式,把光标移动到 online-mode=truetrue 改成 false 接着按esc键 再输入:wq回车(冒号别漏)

# 接下来建立一个screen(cat是窗口名字,可以随意)【centos:yum install screen

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
screen -S cat

# 启动服务器,显示下面信息就证明开服成功了

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
java -jar CatServer-a8b73e9-universal.jar

然后就可以执行服主命令了,比如说op {玩家id} 给某玩家管理员权限(需要玩家在线)

# 接下来连接世界测试一下,输入公网IP,端口是默认的25565(可以不用填端口,除非改成了其他端口)

# 按下Ctrl+A+D挂起窗口,接着查看screen有没有正常

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
screen -ls

ok没问题。这时候ssh连接软件就可以关掉了

配置:

Server.properties配置文件,官方文档:https://minecraft.fandom.com/wiki/Server.properties

”server.properties配置文件”

generator-settings= #用于自定义超平坦世界的生成 op-permission-level=4 #设定OP的权限等级#1 – OP可以无视重生点保护#2 – OP可以使用 /clear、/gamemode、/tp 等等命令,可编辑命令方块#3 – OP可以使用 /ban、/deop、/kick 以及 /op 命令 #4 – OP可以使用 /stop 命令 allow-nether=true #是否开启地狱世界(关闭后删除将不会生成地狱世界) level-name=world #主世界名称 enable-query=false #是否开启GameSpy4协议服务器监听器,用于获取服务器信息,建议不要修改 allow-flight=false #允许玩家在安装添加飞行功能的mod前提下在生存模式下飞行。 prevent-proxy-connections=false #如果开启服务器发送的和Mojang的验证服务器的ISP/AS不一样将会被踢出 server-port=25565 #服务器的端口号 max-world-size=29999984 #设置世界边界的最大半径值,单位为方块。通过成功执行的命令能把世界边界设置得更大,#但不会超过这里设置的最大方块限制。如果设置的 max-world-size 超过默认值的大小,那将不会起任何效果。 level-type=DEFAULT #确定地图所生成的类型 #DEFAULT – 标准世界#FLAT – 超平坦世界#LARGEBIOMES – 预设世界,但所有生态系都更大(仅快照12w19a,或正式版1.3之后可用)#AMPLIFIED – 预设世界,但世界生成高度提高(仅快照13w36a,或正式版1.7.2之后可用)#CUSTOMIZED – 自快照14w21b以来,服务器也支持自定义地形。使用方法是在generator-settings贴上代码 enable-rcon=false #是否允许远程访问服务器控制台。 force-gamemode=false #玩家加入服务器时强制变成默认游戏模式 level-seed= #世界种子 server-ip= #将服务器与一个特定IP绑定。建议留空,留空或是填入你想让服务器绑定的域名。 network-compression-threshold=256 #默认会允许n-1字节的数据包正常发送, 如果数据包为 n 字节或更大时会进行压缩。# 所以,更低的数值会使得更多的数据包被压缩,但是如果被压缩的数据包字节太小将会得不偿失。#-1 – 永久禁用数据包压缩#0 – 压缩全部数据包#(建议在64-1500) max-build-height=256 #玩家在游戏中能够建造的最大高度 spawn-npcs=true #决定是否生成村民 white-list=false #服务器的白名单,OP无须加入白名单 spawn-animals=true #动物是否可以生成 snooper-enabled=true #一旦启用,将允许服务端定期发送统计数据到http://snoop.minecraft.net. hardcore=false #极限模式(启用后,玩家死后会被服务器封禁) resource-pack-sha1= #资源包的SHA-1值,必须为小写十六进制 online-mode=false #是否开启正版验证 resource-pack= #可输入指向一个资源包的URI。玩家可选择是否使用该资源包 pvp=true #是否可以打架 difficulty=1 #设置游戏的难度(peaceful(0)=和平,easy(1)=简单,normal(2)=普通,hard(3)=困难) enable-command-block=false #是否启用命令方块 player-idle-timeout=0 #当进入AFK模式,在规定时间内T出服务器,设置成0为不T出服务器 gamemode=0 #设置玩家的游戏模式 (survival(0)=生存,creative(1)=创造,adventure(2)=冒险,spectator(3)=观察者) max-players=20 #最大玩家数 max-tick-time=60000 #设置每个tick花费的最大毫秒数 spawn-monsters=true #是否生成怪物 view-distance=10 #设置服务端传送给客户端的区块量 (范围3-15) #减小此数值可有效缓解卡顿 generate-structures=true #定义是否在生成世界时生成结构(如村庄) motd=A Minecraft Server #玩家客户端的多人游戏服务器列表中显示的服务器信息,显示于名称下方。 中文需转码

”Catserver文件夹结构”

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Catserver 的文件夹结构
├─config //模组的一些设置
├─libraries //一些支持库
├─logs //存放服务端日志的文件夹
├─mods //存放模组的文件夹
├─plugins //存放插件的文件夹
    └─bStats //存放插件配置的一些文件夹
└─world //世界文件夹
    ├─data //世界数据文件夹
    │ ├─advancements
    │ └─functions
    ├─DIM-1 //世界里的世界#滑稽
    │ ├─data
    │ │ └─functions
    │ ├─playerdata
    │ └─region
    ├─DIM1
    │ ├─data
    │ │ └─functions
    │ ├─playerdata
    │ └─region
    ├─playerdata //玩家数据文件夹
    └─region
├─banned-ips.json //存放了被 ban IP 玩家的 UUID 及游戏名称等相关信息。
├─banned-players.json //存放了被 ban ID 玩家的 UUID 及游戏名称等相关信息
├─bukkit.yml //由 Bukkit 派生得到的服务端都有的文件。保存着 Bukkit 所提供的最基本的设置选项。
├─catserver.yml //这是 Paper 才有的配置文件,您一般不会在 Bukkit 或 Spigot 中看到它。
├─CatServer-a8b73e9-universal.jar //服务端核心
├─commands.yml //它提供了一种快速而简单的方法来强制服务器使用Mojang提供的命令(而不是Bukkit中内置的命令)而不产生冲突。
├─eula.txt //在首次开服的时候,我们需要同意 EULA 协议。
├─help.yml //一些插件的帮助信息会出现在这里面,一般不需要进行什么修改。
├─ops.json //op们的游戏昵称 UUID 等信息会在这里出现。
├─permissions.yml //是默认的权限定义YAML文件,在启动时自动生成。它的主要功能是将权限节点组合到一个文件中,以便权限插件(以及使用权限的插件)可以在整个系统中使用它。
├─server.properties //服务端的一些基本设置就在里面,如设置端口,设置游戏难度,设置游戏模式(生存、创造等)等。
├─spigot.yml //这是 Spigot 才有的配置文件,您一般不会在 Bukkit 中看到它。因为 Paper 是由 Spigot 派生而来的服务端,所以在 Paper 的服务端中,它也会出现。
├─usercache.json //储存着用户部分信息的缓存文件。
├─version_history //一些 Minecraft 和服务端核心的版本信息。
├─whitelist.json //白名单列表。(如果您在server.properties中开启了白名单,您就可以在该文件中添加和管理谁被允许或不被允许进入服务器)

关于screen的更多设置:

如果想恢复服务端后台执行我的世界命令,只需输入

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
screen -r cat

如果想关服可以执行下面命令 在screen外杀掉名为mc的screen

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
screen -S cat -X quit

关于Ubuntu防火墙更多设置:

# 开启防火墙,需要输入y确认

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo ufw enable

# 防火墙放行端口

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo ufw allow/deny 19132

//允许/拒绝 访问19132端口,19132端口后可跟/tcp或/udp,表示tcp或udp封包。

# 放行完成,需要重启防火墙生效

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo ufw reload

安装宝塔:

官网:https://www.bt.cn/

Ubuntu安装命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

记得在控制面板放行8888端口,Ubuntu防火墙开了也要放行

转载后记

由于 Minecraft 的更新,很多朋友会选择 最新版本 进行开服,因此推荐安装OpenJDK17

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo apt-get install openjdk-17-jdk

如果服务器的配置小于 2核心 2GB 不推荐开服,因为很可能内存溢出,导致开服失败

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-6-19 2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
老鼠与毒药
有1000瓶药水,其中一瓶是有毒的,老鼠喝掉药水后,毒性会在24小时后发作。那最少需要多少只老鼠,能够在24小时后找出哪一瓶有毒呢?
小K算法
2021/05/31
8750
面试题十五期-一个腾讯的面试题~biu
1、1000瓶药水,其中至多有1瓶剧毒,现在给你10只小狗在24小时内通过小狗试药的方式找出哪瓶药有毒或者全部无毒(小狗服完药20小时后才能判断是否中毒)。
测试小兵
2019/11/21
5970
面试题十五期-一个腾讯的面试题~biu
一道刚遇到的面试题,面试官说答不出正常
大家周末愉快,今天分享一道很有意思的面试题目。 面试官问这道题之前还说:不用紧张,基本上没啥人可以答出来,你就发散着想想就行。 好了,废话不多说了,我们直接上题。 题目 现在有 10 只小白鼠和 1000 支药水,1000 支药水中有且仅有一支药水有毒,如果小白鼠喝下毒药,那么毒发的时间是两小时。 现在只给你两小时的时间,请问如何用这 10 只小白鼠测出哪支药水有毒?(忽略小白鼠喝药的时间)。 思考 当时听完这题,我第一反应是:这题是不是在逗我? 就 10 只小白鼠,喝 1000 支药水,那么一只小白鼠肯定
程序员鱼皮
2023/03/29
3390
一道刚遇到的面试题,面试官说答不出正常
尾部的0和小老鼠喝药
因此就有解法1: 1.对每个数字依次除以5,如果余数为0则+1,如果得到的商除以5余数仍为0则再加一,直到余数不为0再继续下一数字。 实例:
呼延十
2019/07/01
5560
从老鼠试毒问题来看二分法
很多人对于二分法的理解比较片面,之前碰到一个题目 " 从一个先升序后降序的数列中,比如 1 2 3 7 4 3 2 中运用二分法去查找一个给定的元素",很多人说根本不能二分,因为没有排序。其实 这道题完全可以使用二分查找进行解答, 如果你觉得不可以的话,很可能对二分法理解还比较片面。 这里以另外一个更加有趣(至少我认为)的例子来讲解一下二分法。
lucifer210
2019/12/24
1.7K0
[oeasy]python0083_十进制数如何存入计算机_八卦纪事_BCD编码_Binary_Coded_Decimal
编码进化 回忆上次内容 上次 研究了 视频终端的 演化 从VT05 到 VT100 从 黑底绿字 到 RGB 24位真彩色 形成了 VT100选项 从而 将颜色 数字化 了 生活中我们更常用
oeasy
2023/02/14
3400
[oeasy]python0083_十进制数如何存入计算机_八卦纪事_BCD编码_Binary_Coded_Decimal
【春节特辑】神奇的二进制
有 1000 个一模一样的瓶子,其中有 999 瓶是普通的水,有 1 瓶是毒药。任何喝下毒药的生物都会在一星期之后死亡。现在,你只有 10 只小白鼠和一星期的时间,如何检验出哪个瓶子里有毒药?
五分钟学算法
2019/09/03
6940
【春节特辑】神奇的二进制
老鼠和毒药的问题
  有1000只一模一样的瓶子,编号1-1000。其中999瓶是水,一瓶是看起来像水的毒药。只要老鼠喝下一小口毒药,一天后则死亡。现在,你有7只老鼠和一天的时间,如何检验出哪个号码瓶子里是毒药?
Wu_Candy
2022/07/04
1K0
老鼠和毒药的问题
薛定谔的猪
有1000个瓶子里面装满了水,其中1瓶里面被加入了毒药,但是滴入毒药的水在外观上看和普通水是一模一样的,也就是说这1000个瓶子是分不清哪瓶是装有毒药的,除非把装有毒药的水喝进肚子里。现在有一只可怜的猪可以用来实验,将其中一瓶水喂给这只猪喝,如果猪毒发身亡了,说明这瓶水有毒。猪并不需要喝完整瓶水,只需喝到一小口,毒性就会发作,如果水是有毒的话。
兜兜转转
2023/03/08
5370
薛定谔的猪
5-进制
本文目录 一、十进制 二、二进制 三、八进制 四、十六进制 五、进制总结 六、变量与进制
Python知识大全
2020/02/13
5620
《Java从入门到失业》第一章:计算机基础知识(1.1):二进制和十六进制
  最近7年来的高强度工作和不规律的饮食作息,压得我有些喘不过气,身体也陆续报警。2018年下半年的一场病,让我意识到了这个问题的严重性,于是开始强制自己有规律饮食和作息,并辅以健身锻炼,不到2年的时间,长期的腰痛和左肩膀痛竟然无药自愈,慢性胃炎也得到了缓解,于是我下定决心要坚持下去。
用户7801119
2020/09/27
6300
计算机基础(2)——进制与进制转换
进制也就是进位计数制,是人为定义的带进位的计数方法。 对于任何一种进制---X进制,就表示每一位置上的数运算时都是逢X进一位。十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推,x进制就是逢x进位。
绿水长流z
2025/01/03
1760
计算机基础(2)——进制与进制转换
小朋友学C语言(18):二进制
一、十进制与二进制 我们日常所用到的计数方式,是十进制(数字用0,1,2,3,4,5,6,7,8,9这十个数字来表示)。 十进制的进位规则是”逢十进一”。 比如零、一、二、三、四、五、六、七、八、九都是用一位数来表示。再进一的话,是十。十无法用1位数来表示,所以要”进一”,用两位数来表示,即10。 19进一是二十,无法以1X来表示,所以得用20来表示。 99进一是一百,无法用9X来表示,所以得用100来表示。 计算机用二进制(数字用0和1来表示)来存储数据。二进制的进位规则是“逢二进一”。 零用0来表
海天一树
2018/04/17
1K0
小朋友学C语言(18):二进制
【进制转换】《进制大乱斗,谁才是真正的赢家!》
进制转换是计算机科学中的基础概念,也是编程和数字逻辑设计中的重要内容。掌握进制转换对于理解计算机内部运算机制、进行硬件设计和编写高效代码至关重要。本文将详细介绍各种进制及其相互转换方法。
LuckiBit
2024/12/11
2320
计算机常用的数制及编码
我们习惯使用的十进制数是由0、1、2、3、4、5、6、7、8、9十个不同的符号组成,每一个符号处于十进制数中不同的位置时,它所代表的实际数值是不一样的。例如1999年可表示成
张哥编程
2024/12/17
1720
C语言十进制与二进制的相互转换
计算机只认识二进制数(0和1),因为计算机是机器,它由逻辑电路组成,而逻辑电路一般情况下有两种状态,这两种状态分别是开关的闭合和断开,逻辑电路的这两种状态刚好就对应了二进制的 "1" 和 "0” 。常见的进制数有二进制、八进制、十进制、十六进制。在不同的进制之间还可以相互转换,如:二进制转十进制,十进制转二进制等等。今天我来给大家分享如何运用C语言编写代码来实现进制数之间的互相转换。
程序员小顺
2021/10/13
2.4K0
[c/c++后台开发面经] 京东面经(含答案)
1000瓶无色无味的药水,其中有一瓶毒药,10只小白鼠拿过来做实验。喝了无毒的药水第二天没事儿,喝了有毒的药水后第二天会死亡。如何在一天之内(第二天)找出这瓶有毒的药水?
C语言与CPP编程
2020/12/02
9250
[c/c++后台开发面经] 京东面经(含答案)
你说你会位运算,那你用位运算来解下八皇后问题吧
位运算在生产或算法解题中并不常见,不过如果你用得好,可以达到事半功倍的效果,而且位运算用得好,也可以极大地提升性能,如果在生产或面试中能看到使用位运算来解题,会让人眼前一亮,觉得你还是有点逼格的,巧用位运算,不仅会提升性能,还会让代码的可读性更好,达到四两拨千斤的效果,今天我们就来学学位运算在解题中的一些技巧,最后会用位运算来看看怎么解八皇后这道大 Boss 题,相信你看完肯定会有收获!
kunge
2020/03/26
9230
你说你会位运算,那你用位运算来解下八皇后问题吧
【BLE MIDI】MIDI 文件格式分析总结 ★★★
这个 mid 文件很简单 , 但是麻雀虽小 , 五脏俱全 , 其中有所有的必须的 midi 文件头 , midi 轨道头 , 时间标志 , 等信息 ;
韩曙亮
2023/03/29
1.7K0
【BLE MIDI】MIDI 文件格式分析总结 ★★★
二进制,八进制,十进制,十六进制数之间的转换方式
我们常用的进制包括:二进制、八进制、十进制与十六进制,它们之间区别在于数运算时是逢几进一位。比如二进制是逢2进一位,十进制也就是我们常用的0-9是逢10进一位。
岳泽以
2022/10/26
1.9K0
二进制,八进制,十进制,十六进制数之间的转换方式
推荐阅读
相关推荐
老鼠与毒药
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验