C语言之操作符1

初识C语言1(操作符详解) 算术操作符 移位操作符 位操作符 赋值操作符 单目操作符 关系操作符 逻辑操作符 条件操作符 逗号表达式 下标引用、函数调用和结构成员 阅读详情

        在表达式中,常常使用到各种操作符(也被称为运算符)。在这里详细讲解算术操作符,赋值操作符,单目操作符。关系操作符、条件操作符、逻辑操作符会在后期讲解。

一.算术操作符:+、-、*、/、%

        +、-、*、/、%这些操作符都是双目操作符。

        双目操作符:有两个操作数,位于操作符的两端。

如:

int a=4 + 3;

//4和3就是操作数,+就是操作符

//因此+也叫双目操作符

1.1+、-

        +、-用来完成加法和减法。

#include<stdio.h>
int main()
{
	int x = 4 + 22;
	int y = 61 - 3;
	printf("%d\n", x);//26
	printf("%d\n", y);//58
	return 0;
}

1.2 *

        运算符*用来完成乘法。

#include<stdio.h>
int main()
{
	int num = 5;
	printf("%d\n", num * num);//25
	return 0;
}

1.3 /

        运算符/ 用来完成除法。

        除号两端如果是整数,执行的是整数除法,得到的也是整数的商。

#include<stdio.h>
int main()
{
	float x = 6 / 4;
	int y = 6 / 4;
	printf("%f\n", x);//输出1.000000
	printf("%d\n", y);//输出1
	printf("%f\n", y);//输出0.000000
	return 0;
}

运行结果: 

第二个和第三个输出不一样,是因为它们占位符不同,变量y是整型,而第三个占位符是浮点型,因此占位符类型应与变量类型一一对应 。

上述示例中,尽管变量x的类型是float(浮点数),但是 6/4得到的结果是 1.0 ,而不是1.5。原因在于C语言里面的整数除法是整除,只会返回整数部分,丢失小数部分。

        如果希望得到浮点数结果,两个运算符必须至少有一个浮点数,这时C语言就会进行浮点数除法。如:

#include<stdio.h>
int main()
{
	float x = 6.0 / 4;
	int y = 6 / 4;
	printf("%f\n", x);//输出1.500000
	return 0;
}

例子2:

对比上述两个代码,只有20那里不同。

20.0表示进行浮点数除法,score/20.0得到0.250000,0.250000乘100得到25.000000,又由于score是int类型,结果会截断,留下整数部分。

而20进行整数除法,score/5得到整数值0,0乘100等于0 

1.4 %

        运算符%表示求模运算,即返回两个整数相除的余值。这个运算符只能用于整数,不能用于浮点数

int x = 6 % 4; //2

负数求模的规则是,结果的正负号由第一个运算数的正负号决定。

printf("%d\n", 11 % -5);//1

printf("%d\n" , -11 % 5);//-1

printf("%d\n", -11 % -5);//-1

上面示例中,第一个运算数的正负号(11或-11)决定了结果的正负号。 

二.赋值操作符:=和复合赋值

        在变量创建的时候给一个初始值叫初始化,在变量创建好后,再给一个值,这叫赋值。

int a = 100;//初始化

a = 200;//赋值,这里使用的就是赋值操作符 

 赋值操作符=是一个随时可以给变量赋值的操作符。(赋值表达式:https://blog.youkuaiyun.com/wait___wait/article/details/135331063)

2.1连续赋值

赋值操作符也可以连续赋值,如

int a = 3;

int b = 5;

int c = 0;

c = b = a  + 3;//连续赋值,从右向左依次赋值

但这种代码写出来,吧容易理解,建议拆开写,便于观察代码的执行细节。

2.2复合赋值+=、-=

         在写代码时,经常可能对一个数进行自增或自减,如:

int a = 10;

a += 3;//a = a + 3

a -= 2;//a = a - 2

 三.单目操作符:++、--、+、-

        前面介绍了双目操作符有两个操作数,而单目操作数只有1个操作数。

3.1 ++和--

        ++是一种自增操作符,又分为前置++和后置++, --是一种自增操作符,也分为前置--和后置--。

3.1.1前置++

        计算口诀:先+1,后使用;

int a = 10;

int b = ++a;//++的操作数是a。放在a前面就是前置++

printf("%d %d", a, b);//11 11

 a原来是10,先加1,后a变成11,再使用就是赋值给b,b得到的也是11,最终a和b都是11。

再来一个示例,帮助理解 :

int a = 10;

printf("%d\n",a++);//10,先使用a的值,打印10后,a再加1

printf("%d" ,a);//11

3.1.2后置++

        计算口诀:先使用,后+1;

int a = 1 0;

int b = a++;

printf("%d %d", a, b);//11 10

 a原来是10,先使用,就是先赋值给b,b得到了10,然后a再加1,变成11。

3.1.3前置--

        ++和-- 的道理是一样的,只是把+1换成了-1;

        计算口诀:先-1,后使用

int a = 10;

int b = --a;

printf("%d %d", a,b);//9 9

3.1.4后置--

        同理后置--类似于后置++,只是把加1换成了减1

        计算口诀:先使用,后-1

 int a = 10;

int b = a--;//表达式形式

printf("%d %d", a, b);//9 10

从上述几个例子可以看出,如果是表达式形式的,不管是前置还是后置,对于操作数本身都是进行了+1或者-1的 。

3.1.5练习

求下面代码的结果 :

#include <stdio.h>
int main()
{
	int a, b, c;
	a = 5;
	c = ++a;
	b = ++c, c++, ++a, a++;//表达逗号式+赋值表达式
	b += a++ + c;
	printf("a = %d b = %d c = %d\n:", a, b, c);
	return 0;
}

答案:a = 9 b= 23 c = 8 

答案解析:

++运算符:分为前置++和后置++,

前置++:先加1,后使用,即先使用变量中内容,然后给结果加1

后置++:先使用变量中内容,整个表达式结束时,给变量加1

逗号表达式,取最后一个表达式的值。(逗号表达式:https://blog.youkuaiyun.com/wait___wait/article/details/135331063)

#include <stdio.h>
int main()
{
	int a, b, c;
	a = 5;
	c = ++a;// ++a:加给a+1,结果为6,用完加之后的结果给c赋值,因此:a = 6  c = 6
	b = ++c, c++, ++a, a++;
   // 逗号表达式的优先级,最低,这里先算b=++c, b得到的是++c后的结果,b是7
   // b=++c 和后边的构成逗号表达式,依次从左向右计算的。
   // 表达式结束时,c++和,++a,a++会给a+2,给c加1,此时c:8,a:8,b:7
	b += a++ + c; // a先和c加,结果为16,在加上b的值7,b的结果为23,最后给a加1,a的值为9
	printf("a = %d b = %d c = %d\n:", a, b, c); // a:9, b:23, c:8
	return 0;
}

3.2 +和-

        这里+、-不同于算术操作符,是单目操作符。

运算符+对正负没有影响,是一个完全可以省略的运算符,但是写错了也会报警。

int a = +10;  等价于    int a = 10;

运算符- 用来改变一个值的正负号,负数的前面加上-就会得到正数,正数的前面加上-就会得到负数 。

负数可以有以下途径获取:

#include<stdio.h>
int main()
{
	int a = 10;
	int b = -a;
	int c = -10;
	printf("b=%d c=%d\n", b, c);//b和c都是-10
	printf("a=%d\n", -a);//-10
	return 0;
}

欢迎斧正!!! 

后期会不断更新...

期待你的

 

波分复用-Zblock仿真 Z-BLOCK是一种用于光通信模块的光学元件,其核心结构是在玻璃块一侧贴有4个特定波长滤光片,另一侧镀有反射膜和增透膜。光信号在内部呈现Z字形反射路径,实现波长分离。文章以可见光LED为例,在ZEMAX中演示了非序列模式下的建模过程,重点介绍了滤光片和膜层的参数设置方法。需要注意的是,入射角度需根据玻璃折射率、通道高度和厚度精确计算,否则可能导致光泄漏。该建模方法同样适用于光通信中的光纤激光器系统。 阅读详情

相关推荐

深入CRSF协议数据包:手撕STM32代码,教你像调试串口一样分析ELRS遥控数据流

本文深入解析CRSF协议数据包,通过手撕STM32代码,教你如何像调试串口一样分析ELRS遥控数据流。从硬件准备到数据包捕获状态机设计,再到高级数据分析技巧和实战应用,全面覆盖CRSF协议的解析与优化,帮助开发者构建稳定可靠的通信系统。

weixin_29194693的博客 337

C语言—操作符1

可以发现,每一次左移都有*2的效果,这是因为每左移一位,二进制序列的每一位都向左移动一位,相当于每一位都*2,但是不是左移都有*2的效果,需要在左移的过程没有丢失原有有效的位,即原本为1的位置(符号位除外)左移后丢失,会导致计算的结果不会有*2的效果。二进制是用0和1的数表示,通常使用的数是十进制的数字,用0-9的数字表示,常见的进制还有8进制,用0-7的数字表示,16进制用0-15的数字表示,但是为了使用方便将10-15的数字转换为a-f表示;原因在于,使⽤补码,可以将符号位和数值域统⼀ 处理;

2502_91437895的博客 992

企业级AI Agent平台建设方案

本报告将深入剖析构成一个顶级AI Agent平台的各个功能层面,为构建者提供一份全面的战略蓝图。

分享AI和大数据领域的知识和研究 1582

【C语言之操作符1】

C语言之操作符1

2301_78107465的博客 505

深度解读扫地机器人的导航原理

科技改变生活,不可否认科技的进步的确为我们的生活带来许多便捷,以智能家电为例,智能电饭煲、智能洗碗机、智能扫地机等产品已逐渐成为家庭的一分子,其中以扫地机表现最为抢眼。能做到智能规划清扫,收割了不少家庭主妇及科技爱好者的芳心。但扫地机并非一开始就这么智能,最初的扫地机只能做到随机式清扫,会频繁出现碰撞现象。 近年来,通过业界的不断努力,目前,扫地机器人已告别乱碰乱撞现象,能做到自主路径...

qq_38403231的博客 6503

kettle连接达梦资源库数据库插件

kettle自定义插件plugin database plugin 达梦插件 dm插件

weixin_42122126的博客 2169

C语言:操作符(1)

C语言操作符部分知识点的一点小总结

knd_max的博客 1338

Holt-Winters方法预测水电发电量

Holt-Winters 模型, ARMIA,ACF检验 ,Dickey-Fuller 检测,白噪声检测,差分

firefox_yau的博客 1270

C语言-操作符详细解析(1)

操作符在c语言中有很重要的作用,鉴于大家在各个地方都有了解过操作符,但是其实大家可能学习的并不全面,并且后续指针可能就会用到操作符相关知识,本篇文章将会详尽地阐述c语言中的各种操作符及应用。

Become Mad的博客 1162

FFmpeg + Qt 实现摄像头采集与 MP3 背景音乐 RTSP 推流

在直播或视频监控场景中,我们经常需要将摄像头画面与背景音乐混合后推送到 RTSP 服务器。本文将详细介绍如何使用Qt框架结合摄像头实时采集(Windows 下使用dshow,Linux 使用v4l2视频预览(显示为 QImage)视频 H.264 编码 + RTSP 推流从 MP3 文件读取音频,重采样为 AAC 编码并推流循环播放音频文件解决中文文件路径打开失败的问题文章将剖析每个技术环节的关键代码,并给出完整的类实现。

weixin_45397344的博客 504

液滴碰撞壁面的过程背景论文——bouncing反弹,spreading扩展,splashing飞溅。铺展过程介绍。还存在很多未解之谜。

【1993-德国-Phenomena of liquid drop impact on solid and liquid surfaces】液滴碰撞壁面的过程背景——bouncing反弹,spreading扩展,splashing飞溅。还存在很多未解之谜。还存在很多未解之谜。不同液滴形状碰撞过程。

qq_15963745的博客 198

【C语言】操作符1

上面的操作符有部分我们在前面的学习中已经见到和使用过了,如:算术操作符,赋值操作 符,单目操作符,关系操作符,逻辑操作符,条件操作符等。今天我们继续学习一部分,操作 符中有一些操作符和二进制有关系,我们先对进制和进制转换学习一下。

2302_81083101的博客 1601

API深度集成——OpenClaw与第三方服务无缝对接(2026实战版)

本文介绍了OpenClaw系统与第三方服务的API深度集成技术,重点阐述了RESTful API的实现方案。通过一个功能完善的REST客户端类(RestClient)展示了核心功能:支持请求重试、拦截器机制、错误处理和认证管理等;同时提供了API资源管理器(ApiResourceManager)简化资源操作。这些技术实现了OpenClaw与外部系统的稳定可靠对接,为开发者构建API集成方案提供了2026年的最佳实践。

博客 1213

【C语言】——操作符详解-1

C语言操作符详解:算数操作符,移位操作符,位操作符......

qq_39578649的博客 700

深度学习工具包 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")

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

C语言只操作符详解(1)

C语言中的操作符

2301_80103797的博客 794

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

C语言——操作符详解1

C语言操作符详解1

YT54936543的博客 1180

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

1-5 C语言操作符

除号的两端都是整数的时候执行的是整数的除法,如果两端只要有一个浮点数,那么此时执行的就是浮点数的除法。C语言中的左移操作符主要是针对二进制进行操作,用于嵌入式系统尤其是51单片机中,配置单片机寄存器。,写法a = a 2;x>>n 把x中的每一位向右平移n位,当x为有符号数时,x

qq_45973003的博客 1164

C语言中的操作符--篇章1

移位操作符--左移操作符和右移操作符的使用和底层运算规律;位操作符--按位与、按位或、按位异或等的使用及其拓展使用,讲解前的知识铺垫进制之间的相互转换,原码、反码、补码的计算方法和操作符对其的操作逻辑

2201_76005883的博客 233

c语言操作符基础知识(1)

基本操作符的运算,例题练习

2301_77367034的博客 314

c语言-操作符1

本篇文章介绍c语言的操作符,分别是赋值操作符、算术操作符、移位操作符、位操作符、关系操作符

pyc68的博客 972

(操作符详解p1)C语言从入门到入土(入门篇)

目录 1. 操作符分类: 2. 算术操作符 3. 移位操作符 3.1 左移操作符 3.2 右移操作符 4. 位操作符 5. 赋值操作符 6. 单目操作符 6.1 单目操作符介绍 6.2 sizeof 和 数组 //操作符还没有讲完哈! 1. 操作符分类: 算术操作符 移位操作符 位操作符 赋值操作符 单目操作符 关系操作符 逻辑操作符 条件操作符 逗号表达式 下标引用、函数调用和结构成员 2. 算术操作符 + - * / % ...

原来45的博客 905

C语言操作符详解(异或,求二进制1的个数,n&n-1算法)

即使有了操作符的优先级和结合性,我们写出的表达式依然有可能不能通过操作符的属性确定唯⼀的计算路径,那这个表达式就是存在潜在⻛险的,建议不要写出特别负责的表达式。

zzz87的博客 1329

C语言初阶————操作符1

> 右移操作符:①算数移位:右边丢弃,左边补原符号位(除2) ②逻辑位移:右边丢弃,左边补0。复合赋值: += -= *= /= %= <<= >>= &=!(3)位移操作符:操作的只能是整数,移动的位数只能为正整数,移动的是该数的二进制。相关知识点:①进制:二进制(0、1),十进制(0~9),八进制(0~7)(不同编译器右移操作符不同)

2401_83008139的博客 683

C语言入门(十三):操作符详解(1)

16进制的数字每⼀位是0~9,a~f的,0~9,a~f的数字,各⾃写成2进制,最多有4个2进制位就⾜够了, ⽐如f的⼆进制是1111,所以在2进制转16进制数的时候,从2进制序列中右边低位开始向左每4个2进 制位会换算⼀个16进制位,剩余不够4个⼆进制位的直接换算。8进制的数字每⼀位是0~7的,0~7的数字,各⾃写成2进制,最多有3个2进制位就⾜够了,⽐如7的⼆ 进制是111,所以在2进制转8进制数的时候,从2进制序列中右边低位开始向左每3个2进制位会换算⼀ 个8进制位,剩余不够3个2进制位的直接换算。

世界万物,永恒不变,人心炽热,璀璨光芒 1189

C语言·操作符的讲解(1)

操作符的各个操作数属于不同的类型,这时就要将其中一个操作数的类型转换为另一个操作数的类型,这样操作才可以继续进行。操作符的各个操作数属于不同的类型,这时就要将其中一个操作数的类型转换为另一个操作数的类型,这样操作才可以继续进行。(为什么是32位数呢,因为int是整形,占四个字节,而一个字节等于8个比特位bit,所以是个32位的数)在C语言中,算术运算总是以整型类型的精度来进行的,因此为了获得这个精度,两部分,2进制序列中,最后高位的第一位被当作符号位,剩余的都是数值位(

C14159的博客 2739

C语言(操作符)1

操作符详解

小羊的博客 1289
上一篇: C语言之数组
下一篇: C语言操作符2
大力初奇迹
博客等级 码龄3年 1294粉丝 54原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值