The variable XXX is being used without being initialized?

指针必须初始化才能使用 //下面的语句会出现“ The variable 'temp' is being used without being initialized."的错误;//这说明指针必须要先初始化才可以使用,比如pointer_1和pointer_2#include "stdio.h" voi 阅读详情
AI摘要

本文介绍了一个C语言编程中常见的问题——未初始化变量导致的运行错误。通过对比正确的代码与出现问题的代码片段,详细解释了为何在循环中使用未经初始化的变量会导致不可预期的行为,并强调了给变量赋初值的重要性。

今天在运行下面代码的时候出现了错误:

#include <stdio.h>

int main()
{
	int line;   
	while(line<5000)
	{
		
		line++;
		printf("%d\n",line);
	}
	printf("打印完毕\n");
	return 0;
}

经过一番研究与查阅资料发现是因为变量没有赋初值,正确代码去下:

#include <stdio.h>

int main()
{
	int line=0;   //赋初值
	while(line<5000)
	{
		
		line++;
		printf("%d\n",line);
	}
	printf("打印完毕\n");
	return 0;
}

至于为什么,好像是指针分配空间的问题。(小白一个,暂不知道明确原因)

C++ static const与constexpr演进:从C++11到C++17的兼容性实战 在C++中,static const和static constexpr是定义类内常量的核心机制,其语义、约束与内存模型随标准演进发生根本变化。C++98仅支持public整型类内初始化;C++11放宽为literal type但引入ODR-used陷阱;C++14增强constexpr函数能力,支持编译期复杂计算;C++17通过inline变量彻底解决链接一致性问题。这一演进过程直接决定跨编译器(GCC/Clang/MSVC)和跨平台项目的可移植性与健壮性。理解static constexpr的编译期求值本 阅读详情

相关推荐

视觉特征-自监督-掩码特征预测【2024-10】:D-JEPA【生成模型:下一Token组自回归预测(组内并行去噪),自回归合成图像】【JEPA、Diffusion损失均针对Mask处Token计算】

Dengsheng Chen1 Jie Hu2 Xiaoming Wei1 Enhua Wu2∗1Meituan 2Key Laboratory of System Software (Chinese Academy of Sciences) and State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences {chendengsheng, weixiaoming}@meituan.

u013250861的博客 181

程序崩溃的原因及处理方法

初学C语言/C++程序的编写时,可能经常会遇到程序崩溃的现象。一般来说,程序崩溃是由于内存操作不当引发的。但是具体来讲,由哪些原因可以导致程序崩溃呢?以及当程序崩溃时该如何找到错误的位置呢?本教程即是讲解这个问题。本文的视频讲解在- 单步调试 的第7,8节课。

Ydritws的博客 5534

TensorFlow本质是可编程计算图编译器,不是AI工具箱

TensorFlow本质上是一个面向高性能数值计算的图编译器与运行时调度系统,其核心在于将Python描述的计算逻辑静态编译为跨平台优化指令(如XLA融合内核),再由底层Runtime调度至CPU/GPU/TPU执行。这一‘图优先’设计源于GPU显存管理刚性需求,通过Placer算法实现张量生命周期规划与内存复用,显著降低显存碎片和同步开销。相比直译式框架,它在工业级训练吞吐、边缘部署确定性及SavedModel跨语言兼容性上具备不可替代的技术价值。尤其在需要稳定低延迟、高资源利用率与生产可追溯性的场景——

weixin_30268071的博客 314

初学者常见错误总结(一)

The variable ‘age’ is being used without being initialized. 翻译:变量 age 还没有被初始化就使用了 改正:在int后面定义变量时就初始化,即,int age=0,但是还是错误 因为变量的输入顺序错误 修改后应该是图二所示,将输入age值的代码放在计算式之前 ...

Jerry_JiaJieLi的博客 659

视觉特征-自监督-掩码特征预测【2024-04】:V-JEPA【潜空间】【≈90%多块时空掩码】【上下文目标块预测】【特征空间预测≠像素重建】【EMA目标编码器+停梯度】

Adrien Bardes 1,2,3, Quentin Garrido 1,4, Jean Ponce 3,5,6, Xinlei Chen 1, Michael Rabbat 1, Yann LeCun 1,5,6, Mahmoud Assran 1,†, Nicolas Ballas 1,† 1 FAIR at Meta, 2 Inria, 3 École normale supérieure, CNRS, PSL Research University, 4 Univ. Gustave Eiffel

u013250861的博客 245

SLUB DEBUG 检测slab 内存泄漏

文章介绍如何定位linux 内核中slab 内存泄漏。

一叶知秋的博客 1491

The variable 'str' is being used without being defined 问题

在c中对char 型 数据操作时会出现如下的错误:Run-Time Check Failure #3 - The variable str is being used without being defined.一般这是因为在定义char* str 时没有给其分配存储空间而造成的。如:char* str;strcpy(str,"string");就会出现上面的错误。

grtwall的专栏 4675

保姆级教程:用STM32CubeMX给STM32F407配置RTC秒中断,并解决掉电时间丢失问题

本文详细介绍了如何使用STM32CubeMX为STM32F407配置RTC秒中断,并解决掉电时间丢失问题。通过硬件原理与软件配置的双视角解析,帮助开发者实现精确计时与时间持久化,适用于物联网设备和工业控制器等场景。

weixin_42519733的博客 137

《C语言报错》Run-Time Check Failure #3 - The variable 'sum' is being used without being i

在学习《C语言实战105例》的11例时候,代码检测没有问题,但是运行遇到中断,显示: Run-Time Check Failure #3 - The variable 'sum' is being used without being i 代码为; /*定义一个求总的平均成绩的函数AverageAll, 它的形参一个是指针变量(数组名),传递一个首地址, n是要计算的成绩个数*/ floa...

BelleDiao的博客 3万+

基于FPGA的函数信号发生器设计

设计采用波形查找表和相位累加器的方法实现DDS,查找表的数据位宽为8位,采样点数为4096。波形产生范围是100Hz-20MHz,最小频率间隔为1Hz,用8个数码管显示频率,可产生正弦波、方波、三角波,波形用两个led显示,select信号控制,全灭为正弦波,一亮一灭为方波,全亮为锯齿波。为了使频率和相位便于调节,用3个拨码开关控制步进,用8个led显示状态。

FPGA入门到跑路 5636

abaqus wcm插件下载_Abaqus随机短纤维增强复合材料建模插件

文末附Abaqus随机短纤维增强复合材料建模插件下载链接前言短纤维增强复合材料相对于长纤维增强复合材料来说更容易制备,且短纤维的填充性能略有改善,可制造复杂产品,广泛应用于车辆、航空航天、建筑等行业,对短纤维增强复合材料进行细观力学分析,可对其宏观力学性能进行预测、分析破坏机理等。接下来对随机短纤维增强复合材料建模插件进行介绍。NO.1 【算法简介】难点一:此插件核心在于判断生成的纤维是...

weixin_39974882的博客 2833

xxx的纠错(1)

int LsitFind(SeqList *L, int x) { int i; for (i = 0; i < 5; i++) { if (x == L->list[i]) return i; else return -1; } } int main() { SeqList *list1

哈哈哈哈哈哈哈 579

【Unity+HoloLens2】从0开始在HoloLens2部署MR工程

HoloLens2部署的权威教程在微软的官方文档中,但有些问题其实官方文档并没有列出,所以在实际开发过程中如果遇到bug,就需要自身或者前人的经验去解决。比如:对于Hololens2来说,在VS中需选择ARM64而不是x86。部署需要有良好的网速;工程打包出来的文件路径和工程路径有关联,如果这两个路径不匹配,部署就会失败。部署后打不开可能是因为Unity中未添加需要部署的场景,在Build Settings中点击Add open Scenes。...

fmxs 4571

C和C++易出现的低级错误

C语言、C++中易出现的低级错误,其中报错编译错误、连接错误、运行时错误等等

段毅的博客 1486

优化相机姿态和三维点云的Bundle Adjustment算法及其编程实现

重投影误差是指将优化后的相机姿态和三维点云投影到图像平面上,与对应的图像特征点之间的距离。Bundle Adjustment(捆绑调整)是一种用于同时优化相机姿态和三维点云的算法,它可以提高三维重建和相机定位的精度。下面是一个简单的Python示例代码,演示了如何使用Bundle Adjustment算法优化相机姿态和三维点云的参数。通过以上步骤,Bundle Adjustment算法可以不断地优化相机姿态和三维点云的参数,从而提高重建和定位的精度。Bundle Adjustment算法的编程实现。

CyberXZ的博客 741

FPGA实践教程: 使用HLS将C程序生成IP核心进行FPGA开发

请根据您使用的FPGA开发板和供应商选择适当的HLS工具,并按照他们的安装指南进行安装。根据您使用的FPGA开发板和供应商选择适当的HLS工具,并按照他们的安装指南进行安装。通过本教程,您了解了如何使用HLS工具将C程序生成IP核心,并将其用于FPGA开发。在HLS项目中,您可以对C程序进行设计和优化,以生成对应的IP核心。在HLS项目中,您可以对C程序进行设计和优化,以生成相应的IP核心。将导出的IP核心导入到FPGA项目中。使用FPGA开发环境的菜单中的"导入"或"添加文件"选项导入IP核心。

CqpFsharp的博客 455

CANN/hixl C++安全编码规范

> **Applicable Scope**: Secure coding red-line specifications that all C++ code must follow 100%. ## Rule List | Rule No. | Rule Name | Category | Severity | |---------|---------|------|---------|

gitblog_01065的博客 732

第39步 深度学习图像识别:Inception V3建模(Tensorflow)

第39步 深度学习图像识别:Inception V3建模(Tensorflow)

Jet4505的博客 3168

CANN/catlass EVG API文档

`Epilogue Visitor Graph` (EVG) is the graph-based design pattern API currently used by CATLASS to organize GEMM epilogue. This document focuses exclusively on integration paths, parameter sequencing,

gitblog_00799的博客 496

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Keil编译报错#20:identifier未定义的根源与实战排查

在C语言嵌入式开发中,'identifier is undefined'是典型的编译期符号未声明错误,本质源于编译单元(translation unit)的独立性与声明/定义分离原则。其原理在于编译器在预处理后阶段必须已知标识符的类型、存储属性和作用域,否则无法生成有效汇编代码。该错误凸显了头文件包含机制、extern语义、作用域控制(如static)及大小写敏感等核心语言特性。技术价值在于强制开发者建立清晰的模块接口契约,提升代码可维护性与跨文件协作可靠性。典型应用场景包括Keil MDK中多文件STM3

weixin_34054866的博客 287

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

AI Agent环境构建:操作系统级运行时设计与实操

AI Agent不是简单脚本,而是需要类操作系统支撑的动态智能体系统。其核心在于状态管理、工具调度、进程隔离、安全沙箱与可观测性五大能力——这直接对应现代LLM应用对运行时环境的本质需求。传统pip install+Jupyter调试模式在生产中频发subprocess-exited-with-error、missing environment variable、workspace still starting等故障,根源在于缺乏资源感知与生命周期管控。本文基于7个行业落地项目提炼出可复用的Agent Ru

weixin_34279184的博客 424

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【完全免费】西南交大计算机网络实验报告(完整版):资源内容 + 上手流程 + 如何改成你自己的

正在做西南交大《计算机网络》课程实验,卡在某一步不知道步骤和截图该怎么写?「西南交大计算机网络实验实验报告」仓库里放了一份完整的计算机网络实验报告,来自 2019 年 12 月的一位同学,逐页拍照整理成一个压缩包,实验过程、结果与分析都在其中,可以当参考答案对照着看。如果你是计算机相关专业、这门课正要求提交实验报告,这份计算机网络实验报告参考就能用得上。 ## 这份资源里有什么 📎 仓库很精

gitblog_00287的博客 202

game游戏部分1

game单人Ai部分 我将这个game部分分成了两类,一部分为这个单人部分,一部分为这个多人部分了者也 我不得不把这个game部分分割成了两个部分了者也 我们打开了游戏,那这个枪支攻击别人, 以doom3为例,我们走到了一定的区域,然后到达了触发器的区域, 然后触发器调动怪物,来攻击我们,这个怪物的模型被加到了渲染列表中 屏幕上就会出现了一个怪物了。 、这

tailiangliang的专栏 3650

MYSQL 网络连接

assert(mp!= nullptr);#endif首先断言mp非空。为结构体动态分配内存,并将指针赋给。调用来初始化这个安全互斥锁,同时传入源文件名和行号。内部通常会:再调用初始化真正的原生互斥体。记录锁的创建位置、线程 ID 等信息,以便在死锁检测、锁定顺序检查或错误报告时提供调试信息。这种模式主要用于调试版本,帮助开发者发现互斥锁使用问题(如重复锁定、死锁、未释放等)。#else#endif直接调用初始化中的原生互斥体(例如或 Windows 的。

Piemon&Anokata的博客 497

工作中使用到的单词(软件开发)_第二版

软件开发单词

sun0322 1万+

JNA 如何把本地错误码变成 Java 异常:LastErrorException 实战指南

调用 Windows API 时拿到一堆看不懂的错误码?JNA(Java Native Access)的 `LastErrorException` 能把本地库的错误码直接变成带码值的 Java 异常,`errno` 和 `GetLastError()` 两种体系都覆盖。这篇文章带你看透 JNA 本地错误码处理机制,并给出可直接落地的代码。 ## 一个真实报错:JNA 抛出的异常里只有一个数字

gitblog_00055的博客 152
上一篇: 在Visual Studio中使用scanf为什么会报错?(EditPlus)
下一篇: 2021款 联想拯救者R7000P
嵌入式点灯大师
博客等级 码龄5年 67粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式点灯大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值