c与c++的区别 <转> 深有感触

C++23 std::expected:类型安全的错误处理与零开销抽象实践 在C++系统编程与高性能计算中,错误处理是保障软件健壮性的核心环节。传统上,开发者通常需要在异常(try/catch)与错误码(返回值)之间做出选择,但两者各有局限:异常带来不确定的控制流与性能开销,而错误码则缺乏类型安全且易被忽略。std::expected作为一种基于代数数据类型(ADT)的现代解决方案,通过包装期望值(T)或错误(E),在编译期强制错误检查,实现了类型安全与零开销抽象。其设计哲学源于函数式编程中的Either类型,强调显式、确定性的错误处理,尤其适用于禁用异常或对性能有严格要求的场景, 阅读详情

最近在看《c++primer》中标准库和流,不甚理解。不由想到c++到底与c有何不同,幸得一文,读完深有感触,转帖至此,作者见谅。



C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制),而对于C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 

所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。 
对语言本身而言,C是C++的子集,那么是什么样的一个子集?从上文可以看出, C实现了C++中过程化控制及其它相关功能,而在C++中的C(我称它为“C+”),相对于原来的C还有所加强,引入了重载、内联函数、异常处理等等玩艺儿,C++更是拓展了面向对象设计的内容,如类、继承、虚函数、模板和包容器类等等。 
再提高一点,在C++中,数据封装、类型这些东东已不是什么新鲜事了,需要考虑的是诸如:对象粒度的选择、对象接口的设计和继承、组合与继承的使用等等问题。 
所以相对于C,C++包含了更丰富的“设计”的概念,但C是C++的一个自洽子集,也具有强大的功能,同样值得学习。 


几点学习建议: 
1.基本概念很重要。无论学C,还是学C++,基本概念都是第一位的,也是比较困难的,但只有把握了基本概念才能把握整体脉络,才能居高临下。 
2.C是C++的子集,它的基本概念和设计方法相对比较容易理解,初学者可从它入手。 
3.如果要学好C++,建议初学者最好别在如VC,BCB平台下写程序,那种自动化的代码生成,花花绿绿的界面,会让你手足无措。最好先找一片空地(unix,dos),从头做起,写几个大点的程序,数个回合,再到VC,BCB下看看,你会轻松得很。在我看来,学好C/C++是成为VC,BCB高手的必由之路。 
4.不要妄想速成,必须得一个byte,一个bit的去抠,尽量搞清楚每一个问题。 
5.几本好书: 
机械工业出版社的那套“计算机科学丛书”从C到C++,到面向对象设计,一应俱全,都TMD是经典中的经典,而且价格公道,童叟无欺。 
国内也有几本好书,谭老爷子的书好倒是好,就是程序错误太多。强烈推荐清华周之英的《现代软件工程》(上、中、下),它是我所见到的国内少有的一本好书,精华的精华,要点的要点,细细品来,至少也属降龙十八掌等级的东东。 


如果还是有人想学习C/C++的话, 有一些小问题我还是乐意解答的. 但是我认为学习C/C++是不重要的, 重要的是如何锻炼你的思路. 不要找一些连自己都搞不清的问题去做. 

我认为虽然 "潭浩强" 同志有骗钱的嫌疑( 我手头就有一本几乎一模一样的英文书 ), 但是, 是他把这本入门手册引入中国, 使无数程序员了解了C语言, 我想他的功劳也是不可磨灭的. 在< C语言程序设计 >这本书中所有的例子都可以用做锻炼思路的基石, 他对大家的编程是很有帮助的. 我认为是值得一买的. 去思考课后的例子对你的编程很有帮助. 不要小看一个一个简单的例子, 他们是你通往成功的道路. 

当你基本能够掌握了上一本书中例子后, 你就要自己找一些例子程序去看. 开始可能是看不懂, 但是只要努力就没有什么问题. 当你看过几个较大的例子之后, 你会茅塞顿开, ( 大量阅读例子程序是学习C/C++的捷径 ). 你会发现, 你的水平有了显著的提高. 你看的例子越多, 你对 Windows/DOS 了解的越多. 最好能够再看一些关于系统知识的书籍. 他会对你的编程很有帮助的. 

这是我学习C/C++的一点心得, 希望对没有被我吓到而要继续学习C/C++的朋友们有一些帮助. 免得有些同志说我破坏中国软件人才的发展. 

在最后我祝愿所有坚持学习C/C++的朋友们成功! 同时感谢阅读过我文章的同志们. 

想学好C++,非学C不可!!! 

今天我这么肯定的在这里讲这番话,是不想初学者陷入到语言越新越好的误区,本来这个题目就不是很严谨,但是我有几句话必须讲讲,为C平反!! 

C++与C有什么不同呢?我们现在一步步地来分析一下 
一、类,类我并不说它有什么不好,但是对于初学者,它是一个累赘。类的封装使得初学者对程序产生厌倦,感到不适和麻烦。 
二、引用,引用是C++中最臭屁的东西了,最好尽量不要用它,我就是从来不用引用,除非万不得已。引用对于初学者就更容易产生混淆,不知道哪个是引用,哪个是变量。 
三、函数的重载,初学者学函数的重载好像没什么坏处,但是,这会使初学者潜意识里对C语言的变量类型的重要性产生淡化,要记住C语言是对变量类型最敏感了的,变量的类型在C语言里的重要性是不言而喻的。 
四、流操作符,和上面同样的道理,使得对变量类型的重要性产生淡化,况且,cin这个东东有点儿不怎么方便,有时会产生使初学者莫名其妙的结果。 
五、操作符重载,典型的高级应用,初学者可能根本用不着,这个东东会让他们觉得C++很难,门槛高,看不懂…………。 
六、继承,以及虚函数,典型的模仿四不象,这种狗屁东西除了看起来深奥,实用价值很低………………。我怎么可能把某个类的类型的指针去指向另一个不同类型但是是继承关系的类,来实现什么动态联编,晕………… 
………………还有些东东我就不发表评论了,如:new,delete操作符等………… 

七、误区:以问答形式: 
问:C++是面向对象化的而C是面向过程化的? 
答:第二对,第一问错,C++并非完全面向对象化,真正的面向对象化的语言恐怕只有Java才算得上。 
问:C++能实现C所不能的功能吗? 
答:至少我还没有发现…… 
问:学了C再学C++有障碍吗?比如程序设计思想…… 
答:至少我还没有看见谁有此症状。 
问:学了C再学C++又要重头开始吗? 
答:不,C++下可以实现C语言的一切功能。 
问:我学完了C一定还要学C++才能编程吗? 
答:完全没必要。 
问:C++比C好在哪里? 
答:更加符合软件工程学 
问:学完了C再学C++是不是很容易? 
答:那要看你是不是真正的学完了C语言,我从C到C++就一个星期的睡觉前的时间看两眼书,然后就大彻大悟。再跑到这里来发表些狗屁文章了。 


最近在网上看到了很多人的学习方法,本人非常不赞同。很多人都想一口吃个胖子,要学就想学最新的,好象没有人愿意再去学那些老的,旧的编程语言了。但你们能学的懂吗?不学TC2。0等那些较早的优秀编程语言,你们能理解的了VC6。0?如果你真的能,我宁愿做你的徒弟!真是奇怪,那些最基本的语言都不懂的人,怎么可能去理解那些最新的编程语言?我学编程有三年了吧。成绩也不算多,只有一个计算机四级证和一个高程证,但我觉得我在学VC的时候还有很多的不明白的地方。没有人来教我,只能靠我自己,包括所有的成绩在内,我都是靠自己,我从不报班。学VC的半年多来,我想我已经基本入门,但依然有很多的困惑。刚开始学VC,就面临一个项目,我真的犹如笨蛋一般,四处吓摸,毫无头绪,最后勉勉强强才算做个差不多。学好VC再去学其他的高级WINDOWS编程,我想那真是轻而易举,毕竟WINDOWS的内部的很多东西都能直接被VC调用,你首先就可以对WINDOWS有个全新的认识,再去学其他的语言岂能不简单? 

我的感觉是,面向过程和面向对象,其实都很重要的,在VC里也依然需要面向过程,很多东西都是一环扣一环,没有面向过程的思想,怎么可能去编程呢?建议多去看看有关WINDOWS编程的书,但多数都是比较老的书呦!我依然记得当年整天进行TC编程的辛苦,但我依然很怀念当年的劳动付出,毕竟我获得了我想获得的一切——编程思想。我觉得一个好的编程思想,绝对比你去学一门计算机语言好重要的多。要形成自己的编程风格。一个好的编程思想在你的头脑中一旦形成,学习什么语言都会很轻而易举,因为此时的你不在是简简单单的学习,而是来验证! 
MSYS2三大编译器组件对比:MinGW-w64、UCRT64与Clang64 本文深入对比了MSYS2中三大原生Windows开发环境:MinGW-w64、UCRT64与Clang64。MinGW-w64兼容性好但标准老旧;UCRT64作为现代派,基于Universal CRT,是Win10+系统开发的首选;Clang64则提供LLVM工具链和更优的编译体验。文章通过核心概念解析和实战指南,帮助开发者根据项目需求选择最合适的编译器组件。 阅读详情

相关推荐

3 使用指针的7大陷阱

C语言之父丹尼斯·里奇曾说过:“C语言诡异离奇,陷阱重重,却获得了巨大成功!”这句话一方面体现了C语言的灵活性以及广泛的使用,另一方面也体现了C语言的复杂性。在使用C/C++遇到的所有陷阱和问题中,和指针相关的占了绝大部分。C/C++是灵活度和自由度较大的编程语言,指针更是让程序员可以越过安全的栅栏,对某些内存区域进行破坏性的访问,从而引发安全风险和严重问题。C/C++的指针是一把双刃剑,为我们带来了巨大的灵活性,但使用不当的话,也会带来各种各样的问题。

hope_wisdom的技术博客 1619

C++之C++11

文章目录一、默认成员函数的控制1.显式缺省函数2.删除默认函数二、final和override三、变量的类型推导四、范围for五、初始化列表六、右值引用七、lambda表达式 一、默认成员函数的控制 1.显式缺省函数 在C++11中,可以在默认函数定义或者声明时加上=default,从而显式的知指示编译器生成该函数的默认版本,用=default修饰的函数称为显式缺省函数。 class A { public: A(int a)//有了该构造函数,编译器不会自动生成默认的构造函数 :_a(a) {}

Sheena997的博客 1521

云卓遥控器+DIY高清摄像机的方案(完美接入原系统)

发云卓H16 1080P数图控三合一10公里 其中它月

fgh00000的博客 1万+

C与C++的区别

 C是一个结构化语言,如谭老爷子所说:它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制),而对于C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C

chiefsailor的专栏 1253

RK3568(buildroot)利用squashfs+overlay实现嵌入式系统高可靠存储方案

本文详细介绍了在RK3568嵌入式平台上,基于Buildroot系统,利用squashfs只读根文件系统与overlayfs可写层相结合的高可靠存储方案。该方案能有效防止设备意外断电导致的系统文件损坏,通过内核配置、启动脚本编写及镜像制作,实现系统核心的只读保护与用户数据的持久化分离,显著提升嵌入式设备的现场稳定性。

weixin_29189381的博客 547

反激系列-详细到每个容阻的原理之RCD吸收(1)

1、漏感尖峰电压会被RCD吸收,漏感能量一定,电容越大,电容充电的电压就越低,吸收能力就越强,MOS漏极的电压就越低。2、在漏感能力释放完之后(这个过程一般只有一个周期的3%时间),是要通过R1释放掉电容吸收的能量的,把电容的电压降下来方便下一次漏感尖峰来之前再进行吸收。3、电容容量和电阻需要合理搭配,容量足够即可,足够能吸收漏感尖峰电压,不至于超过MOS耐压。电阻需要足够小,小到在放电阶段把电容电压下降到MOS的电压平台。

Cuxiaoweiba的博客 3万+

C与C++的11大区别

1,C++有类,C没有这是最简单的一个区别在业务代码量大的时候,C没有原生的面象对象支持,真的是少了一把利刃啊 2,C++有重载,C没有同样的函数名,根据不一样的参数被传递到不一样的过程让代码看起来更人性化(只是看起来而已,慎用) 3,C++的结构体可以定义成员函数,C不能其实我个人很少在结构体中定义函数,如果这样的话,为什么不设计成类不过,确实有一点,在一些数据存储交换的对象中,定义一个结构体的构造函数,可以省去memset之类的结构体过程 4,C++的函数中变量可以定义在任意位置,C的旧标准是只能定义在

biao2488890051的博客 1930

PHY6252开发实战:从零构建BLE串口透传应用

本文详细介绍了PHY6252开发板在BLE串口透传应用中的实战经验,包括开发环境搭建、BLE串口透传例程解析、AT指令集实现与扩展、数据透传机制优化以及常见问题排查指南。通过智能家居遥控器项目案例,展示了PHY6252在低功耗物联网设备开发中的实际应用。

weixin_29183637的博客 312

C++和C++11的一些特性,建议初学者看看

1. 命名空间 定义: namespace 空间名 { } 命名空间可以嵌套定义, 如: namespace N1 { int n1; namespace N2 { int n2; } } 使用时也需要嵌套, 例如: N1::n1 = 0; N1::N2::n2 = 0; 编译器会将同名的命名空间合并, 这点和汇编的段类似. 使用时可以使用 using name...

weixin_44788162的博客 3067

STM32F103C8T6+HX711实战:从零打造智能体重秤(附OLED显示与语音播报)

本文详细介绍了基于STM32F103C8T6微控制器和HX711称重模块,从零构建智能体重秤的完整实战教程。内容涵盖硬件选型、系统架构、驱动编写、数据滤波校准算法,并实现了OLED显示与语音播报功能。该项目是嵌入式学习的综合性实践,尤其适合作为毕业设计课题,帮助开发者掌握传感器应用、数据处理及人机交互等核心技能。

weixin_28285943的博客 517

iStoreOS等软路由插件卸载的残留?分享一款软路由高级卸载工具,自定义卸载,轻松解决卸载残留问题

iStoreOS用户看过来!👀 还在被插件包残留困扰吗?本文分享一款“高级卸载”的插件,助你深度清理iStoreOS系统,彻底解决软件卸载不净的痛点,告别频繁恢复出厂设置的烦恼!🚀

XiaoqiangClub的博客 1540

【转】周末闲谈:C and C++, why use c++?

看到这篇文章,深有感触,c++又不是附庸风雅的东西,被滥用也就罢了,还要。。。 转自http://www.cppblog.com/cool-liangbing/archive/2009/03/28/78116.html       问起c与c++区别,常常从语法上回答,c++是带类的c,再深入可能提到设计方面,面向对象设计支持,范型设计等等。       问起为什么使用c++?能使用面向对

longjing_g的专栏 430

【AI理论学习】手把手推导扩散模型:Diffusion Models(DDPM)

生成扩散模型DDPM如下图所示分为前向、逆向两个过程,它首先通过不断往原始清晰数据中添加噪声使其变成标准高斯噪声(前向过程),而后期望从标准高斯噪声中还原原始数据(逆向过程)。若能实现,那便可从已知的标准高斯分布中采样一个噪声数据,而后利用DDPM模型生成符合原始数据分布的新数据。 Diffusion模型包含两个过程:数学符号:y∝xy\propto xy∝x:y正比于x,即y随着x增大而线性增大。 条件概率:贝叶斯公式:p(A∣B)=p(B∣A)×p(A)p(B)p(A|B)=\frac{p(B|A)\

小哲的博客 1510

C++ 静态库 vs 动态库与OOP多态思想

本文围绕 C++ 的函数调用机制与库管理方式展开讨论。通过对比 编译时绑定(静态调用) 与 运行时绑定(动态调用,多态),分析它们在性能、扩展性和维护性上的差异。同时结合 静态库(.lib) 与 动态库(.dll) 的使用场景,阐明模块化设计、灵活更新以及低耦合的实现思路

shkdkakh的博客 486

扫码登录原理

扫码登录功能通过PC端与移动端的交互实现安全认证,分为三个阶段:待扫描阶段生成唯一二维码ID并轮询状态;已扫描阶段移动端提交token与二维码ID关联,生成临时token并要求用户确认;确认阶段验证临时token后为PC端生成正式登录凭证。整个过程通过二维码唯一性、状态轮询和二次确认机制确保安全性,防止未授权登录,最终完成跨设备认证流程。

阿杰同学的博客 346

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

关于C#和C++

      听说最近C#比较火,于是有了想学的念头,但是C#必须要依赖.net环境,本来就想见识见识.net,现在好,顺便把.net2005给装了。好,开始学了,习惯了VC++6.0,一下子要转到C#。NET还真是换不过来。真是深有感触,当今技术日新月异,好不容易学了个C++,就听说了“C++已经淘汰了”的言论,虽然是有点夸张,但是也让我等心有余悸,淘汰了我等吃什么饭去。呵呵。开玩笑了。刚学了一点

林仔的专栏 1353

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

从0到1掌握Ascend C算子工程开发全流程

【摘要】本文系统介绍了Ascend C算子从快速开发到标准工程的进阶过程,重点解析了标准开发模式的核心优势与实现方法。文章首先对比了两种开发模式的区别,强调标准开发在工程化、产品化和动态Shape支持等方面的优势。通过HOST-Device架构类比和数据处理流程,深入讲解了异构计算的数据流向。核心部分详细阐述了Tiling机制的概念体系、实现步骤和算法示例,包括结构体定义、函数实现和Kernel侧使用。最后对比了固定Shape与动态Shape的开发方式,展示了动态Shape通过参数传递实现灵活计算的机制。全

g_z_x_的博客 1900

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

小总结

今天写羊车门问题的程序,改了好多遍才能运行的。首先是对python的内容不熟悉,有些知识点没有记住。其次呢,就是python与c语言混了,把c语言的格式用到了python中。 老师说过,Python崇尚极简哲学,实现同样功能,Python都要比C,C++这种重型语言代码短,且编码时间大幅缩短。这几天的编程深有感触。 转载于:https://www.cnblogs.com/zj123-/p/664...

weixin_30340353的博客 62

Socket编程指南及示例程序 (转)

例子代码就在我的博客中,包括六个UDP和TCP发送接受的cpp文件,一个基于MFC的局域网聊天小工具工程,和此小工具的所有运行时库、资源和执行程序。代码的压缩包位置是http://www.blogjava.net/Files/wxb_nudt/socket_src.rar。1         前言在一些常用的编程技术中,Socket网络编程可以说是最简单的一种。而且Socket编程需要的基

zp752963831的专栏 632

[转]Socket编程指南及示例程序

例子代码就在我的博客中,包括六个UDP和TCP发送接受的cpp文件,一个基于MFC的局域网聊天小工具工程,和此小工具的所有运行时库、资源和执行程序。代码的压缩包位置是http://www.blogjava.net/Files/wxb_nudt/socket_src.rar。1         前言在一些常用的编程技术中,Socket网络编程可以说是最简单的一种。而且Socket编程需要的基

roofwei的专栏 771

网络编程 Socket编程指南及示例程序

网络编程 Socket编程指南及示例程序 转自:http://www.cnblogs.com/jy578154186/archive/2013/02/27/2935439.html 链接:http://www.blogjava.net/wxb_nudt/archive/2007/11/01/157623.html 例子代码就在我的博客中,包括六个UDP和TCP发送接受的cpp

Shakespearer的博客 638

Socket编程指南及示例程序(转)

<br />转自:http://www.blogjava.net/wxb_nudt/archive/2007/11/01/157623.html<br /> <br />例子代码就在我的博客中,包括六个UDP和TCP发送接受的cpp文件,一个基于MFC的局域网聊天小工具工程,和此小工具的所有运行时库、资源和执行程序。代码的压缩包位置是http://www.blogjava.net/Files/wxb_nudt/socket_src.rar。1         前言<br />在一些常用的编程技术中,Sock

sophiejohnson的专栏 413

Socket编程指南及示例程序

Socket编程指南及示例程序 2008年04月19日 星期六 下午 11:34 例子代码就在我的博客中,包括六个UDP和TCP发送接受的cpp文件,一个基于MFC的局域网聊天小工具工程,和此小工具的所有运行时库、资源和执行程序。代码的压缩包位置是http

junecau的专栏 670

NXP DSC GFLIB数学库:嵌入式电机控制与数字电源的高性能优化实践

在嵌入式系统开发中,定点数运算和数字信号处理是实时控制算法的核心基础。定点数通过Q格式表示小数,在资源受限的微控制器上实现了高效率和确定性。其原理是将浮点运算转换为整数操作,通过预定义的缩放因子管理动态范围和精度。这种技术对于电机控制、数字电源等需要高实时性和计算精度的应用至关重要,它能显著提升环路控制性能并降低处理器负载。GFLIB数学库正是基于这一原理,为NXP 56800E/X系列数字信号控制器提供了深度优化的三角函数、PID控制器和限幅等函数,通过汇编级优化和Q格式数据支持,帮助工程师在嵌入式DSC

dianwonin4433的博客 395

学习笔记之类(三)

以下内容为Hughen个人学习C++ Primer Plus(第6版)后所写,欢迎一起探讨学习。 今天看书,非常意外的收获到一句话。Stephen Prata在讲到关于自定义的一个向量类,给予一个起始和终点位置,让计算机自己去找寻它们之间的路该怎么走,并算出走了多少步。他做了三组数据的输出,结果大不相同,电脑随机的路子,同一个距离,相差甚远,最后作者这样说:“如果发现自己在随机漫步时,请保持自信

Hughen Force 1119

杂志订阅管理系统c++_FMS财务管理系统:日常数据核对与处理

开发FMS财务管理系统,每天都会与数据打交道,数据的核对与处理是日常工作的一部分,相信接触过财务系统的同学都深有感触,为了一个差异查来查去,最终发现是前端业务系统的问题,白忙一场,本篇就说一下关于财务数据核对的过程与方法,希望读后有所帮助!一、系统数据生成过程对于财务管理系统的数据是通过前端业务系统的数据进行抽取、计算、汇总生成的,其中又包括财务结算、付款、收款等核销过程,数据的准确性是第一位的。...

weixin_39646658的博客 243
下一篇: PE文件格式详解
secondwatch
博客等级 码龄15年 6粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值