首页
学习
活动
专区
工具
TVP
发布

C语言笔记】复合赋值语句

增加一个变量值有两种方式,如:a = a + 5和a += 5。存在两种增加一个变量值方法有何意义呢?K&R C设计者认为复合赋值符可以让程序员把代码写得更清楚些。...另外,编译器可以产生更为紧凑代码。 现在,a = a + 5和a += 5之间差别不再那么显著,而且现代编译器为这两种表达式产生优化代码并无多大问题。但是,要考虑如下两条语句: ?...在第一种形式种,由于编译器无从知道f函数是否具有副作用,所以它必须两次计算数组a下标表达式值。而在第二种形式中,下标表达式只需计算一次,所以第二种形式效率更高。...并且,从书写角度看,第一种形式下标表达式需要书写两次,而第二种形式只需书写一次。 基于这些理由,我们应该使用复合赋值语句

1.3K20

2.7 C++赋值语句

C++赋值语句 在上一节说到,赋值语句是由赋值表达式和一个分号组成,这一节来详细介绍下赋值语句,它是C++重要组成部分。...C++赋值语句具有其他高级语言赋值语句功能,不同C++赋值号=是一个运算符,比如在C++中可以这样写 x=y=z=m=n; 在其他大多数语句中,这样写是不合法。...在C++中,赋值表达式可以包括在其他表达式中 //如 if((x=y)>1) { cout1"<<endl; } 在上面的if语句中x=y不是赋值语句而是赋值表达式,是合法。...C++把赋值语句赋值表达式做了区别,增加了表达式种类。 案例:当x小于0时,输出y=10;x大于0时,输出y=-1;x等于0时,输出y=0。...if嵌套语句

5433330
您找到你想要的搜索结果了吗?
是的
没有找到

C语言if语句

C语言if语句 if语句 语法 if(表达式) 执行语句 例如: include int main() { int a =0; scanf...if语句在没有{ }情况下只控制一行代码,加入{}可以执行该代码块 if语句为分支语句 if()中()内判断为真假判断,为真执行,为假不执行。...,执行else控制语句 与if语句类似,在没有{ }情况下只控制一行代码,加入{}可以执行该代码块 嵌套if语句 嵌套是代码中常用方法,在if语句中可以进行嵌套。...语句嵌套,首先外层if语句对a进行判断,如果小于10,则执行if语句,然后便打印“hello”,接着再进行内部if语句判断,即如果大于5,便执行该if语句代码。...值得注意是,else在多层嵌套语句中与最近if进行匹配,与和谁对齐无关。

10510

C语言 | if语句

C语言if语句一般形式 1、一般形式 f(表达式) 语句1         [else 语句2] if语句表达式可以是关系表达式、逻辑表达式,甚至还可以是数值表达式。...C语言if语句最常见3种形式 没有else子句部分     if(表达式) 语句1 有else子句部分     if(表达式)         语句1     else         语句2 在else...C语言if语句比大小 #include int main() {   int num1,num2;   int max;   printf("请输入两个数:");   scanf("%...以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去动力,跪谢各位父老乡亲啦~ C语言学习路线    C语言开发工具 VC6.0、Devc++、VS2019使用教程...100道C语言源码请去公众号:C语言入门到精通

1.1K42

C语言 | if语句

在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从C语言小白进阶到高手,需要经历是日积月累学习。 那么如何学习呢?当然是每天都练习一道C语言题目!! ? 作者 闫小林 白天搬砖,晚上做梦。...C语言if语句一般形式 1、一般形式 f(表达式) 语句1 [else 语句2] if语句表达式可以是关系表达式、逻辑表达式,甚至还可以是数值表达式。...C语言if语句最常见3种形式 没有else子句部分 if(表达式) 语句1 有else子句部分 if(表达式) 语句1 else 语句2 在else...以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去动力,跪谢各位父老乡亲啦~ C语言学习路线 C语言开发工具 VC6.0、Devc++、VS2019使用教程...点击关注,快速入门C语言

1K52

C语言 | for语句

C语言for语句介绍 除了可以用while语句和do...while语句实现循环外,C语言还提供for语句实现循环,而且for语句更为灵活,不仅可以用于循环次数已经确定情况,还可以用于循环次数不确定而只给出循环结束条件情况...表达式3:作为循环调整,例如使循环变量增值,它是在执行完循环体后才进行。...for(循环变量赋初值;循环条件;循环变量增值)     语句 C语言使用for语句注意事项 1、表达式1可以省略,即不设置初值,但表达式1后分号不能省略。...4、C99允许在for语句表达式1中定义变量并赋初值。...C语言使用for语句求1+2+3+...+10和 #include //头文件 int main() //主函数 {   int i,sum=0;//定义变量   for(i=1;i

1.1K30

C语言switch语句用法详解_c语言switch语句例题

大家好,又见面了,我是你们朋友全栈君。 C语言虽然没有限制 if else 能够处理分支数量,但当分支过多时,用 if else 处理会不太方便,而且容易出现 if else 配对出错情况。...printf(“Sunday\n”); }else{ printf(“error\n”); } return 0; } 运行结果: Input integer number:3 Wednesday C语言还提供了另外一种多分支选择语句...需要注意是,当找到一个相等 case 分支后,会执行该分支以及之后所有分支语句。...这显然不是我们想要结果,我们希望只执行第四个分支,跳过后面的所有分支。 为了避免这种情况,C语言还提供了一个关键字 break,专门用于跳出switch语句。...以上就是对C语言switch语句资料整理,学习 C语言条件语句同学可以参考下。

1.5K30

c语言中指针赋值问题,关于C语言指针赋值问题「建议收藏」

大家好,又见面了,我是你们朋友全栈君。 为方便各位小伙伴更好学习C语言,武林技术小编为此给大家整理了一批资料,供大家交流学习,下面就跟随武林技术频道编辑一起来先来看看关于C语言指针赋值问题。...:22: 警告: 赋值时将指针赋给整数,未作类型转换 test.c:23: 警告: 赋值时将指针赋给整数,未作类型转换 test.c:24: 警告: 赋值时将指针赋给整数,未作类型转换 test.c:25...= ‘/0’){ printf(“%c”, *p); printf(“%c”, *(p+1)); ++p; } } 在字模数组首地址赋值方面用了强制转换为int.在函数调用方面.因为子函数中要求到输入为指针...应该注意赋值类型匹配....以上就是关于C语言指针赋值问题,想必都已有了一定了解,更多关于C语言内容请继续关注武林技术频道。

1.5K10

C语言switch语句用法_c语言switch语句格式

大家好,又见面了,我是你们朋友全栈君。 1、 switch语句基本用法 C语言中,switch语句是一种多分支选择语句,在实际应用中,要在多种情况中选择一种情况,执行某一部分语句。...break; default: 语句块n; break; } 使用说明如下: 程序执行时,首先计算表达式值,与case后面的常量表达式值比较,若相等就执行对应部分语句块,执行完后利用break语句跳出...若表达式值与所有的case后常量表达式均不匹配,则执行default项对应语句n,执行后跳出switch分支语句。...case后面的常量表达式只能是整型、字符型或枚举型常量一种;各case语句表达式值各不相同,只起到一个标号作用,用于引导程序找到对应入口。 这里语句块可以是一条语句,或其它复合语句。...各个case语句并不是程序执行终点,通常需要执行break语句来跳出switch分支语句;若某case语句语句块被执行后,若其后没有break语句,则顺序执行其它case语句,直到遇到break语句或后面所有

2.4K10

C语言数组多种赋值方式

摘要:声明,赋值,连续赋值,memcpy,memset,拼接 一篇文章已经讲述了动态数组定义与使用,由于项目大部分运算为矩阵运算,所以用到数组地方会相对较多,这里再介绍一下数组一些常用运算方法...首先是数组声明,数组在声明时候可以连续进行赋值,即一次进行多个数组元素赋值,但进行声明后就不可以进行多元素赋值(不包括memcpy),只能对每个元素进行赋值: int a[3] = {1,2,3...,这里有两种方式,一种是对每个元素进行赋值,另一种是使用memcpy函数 每个元素进行赋值: int a[3],b[4]; int c[7]; for (int i = 0; i < 7; i++) {...if (i <3) c[i] = a [i]; else c[i] = b [i - 3]; } 使用memcpy函数,memcpy函数原型为 void...如下: int a[3],b[4]; int c[7]; memcpy(c,a,sizeof(int)*3); memcpy(c+3,b,sizeof(int)*4);

2.7K30

C语言基础】结构体赋值

结构体在 C 程序中使用较为频繁,能对数据有一定封装作用。对一个结构体赋值时,经常采用方式是,分别对其成员变量赋值。那么能否将一个结构体用赋值号(“=”)直接赋值给另一个结构体呢?...我们可以从汇编语言角度来看这个问题,测试程序: //test.c #include int main() { struct foo { int a;...使用 gcc 将其编译: gcc -S -masm=intel test.c 编译时并没有报错,说明编译器接受这种赋值方式,但赋值时具体发生了什么?...ebx, [esp+36] mov eax, 7 mov edi, edx mov esi, ebx mov ecx, eax rep movsd 前面3条 mov 语句为给成员变量赋值语句...;中间两条 lea 语句得到了两块内存空间偏移地址,第一块为新内存空间,第二块为结构体 x 占有的内存空间;后面4条 mov 语句,第1、4条作用为把7赋给 ecx,第2条为把新内存空间地址赋给 edi

2.7K70

C语言 | while语句

C语言为什么需要循环控制 大多数C语言应用程序都会包含循环结构,循环结构和顺序结构、选择结构是结构化程序设计3种基本结构,它们是各种复杂程序基本构成单元,况且程序所处理问题常常需要重复处理。...C语言while语句 一般形式 while(表达式) 语句 C语言while语句注意事项 其中语句就是循环体,可以是一个简单语句,也可以是复合语句。...C语言使用while语句求1+2+3+...+10和 #include//头文件 int main()//主函数 {   int i=1,sum=0;//定义变量   while(i...以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去动力,跪谢各位父老乡亲啦~ C语言学习路线    C语言开发工具 VC6.0、Devc++、VS2019使用教程...100道C语言源码案例请去公众号:C语言入门到精通

1.1K42

C语言 | 语句概述

C语言语句作用和分类 1、9种控制语句 if()...else.. //条件语句 for()... //循环语句 while()... ...3、表达式语句 由一个表达式加一个分号构成。 4、空语句 5、复合语句 可以用{}把一些语句和声明括起来成为复合语句C语言赋值语句 1、赋值运算符 =就是赋值运算符。...2、复合赋值运算符 在=之前加上其他运算符。 3、赋值表达式 由赋值运算符将一个变量和一个表达式连接起来式子。...将一个占字节多整型数据赋给一个占字节少整型变量或字符变量时,只将其低字节原封不动地送到被赋值变量。 5、赋值表达时候和赋值语句 由一个赋值表达式加一个分号组成。...以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去动力,跪谢各位父老乡亲啦~ C语言学习路线    C语言开发工具 VC6.0、Devc++、VS2019使用教程

1.4K52

C语言if语句基本用法

=0); c,浮点数无法与 0 比较,只能用近似的值比较;例: 1e-6 等于1×10-6次方可以看成0来使用; 2.用于单分支选择结构; 3.如含有交叉关系,使用并列if语句; 例1:输出两个整数中最大值...1; } else { 语句2;} 用于双分支控制条件语句; 用于非此即彼关系时; 例2:输出两个整数中最大值 例2关于对于非法字符检查与处理 #include void...常量2:语句2; … case 常量n:语句n; default: 语句n+1; } 用于多路选择语句; switch语句相当于多个if-else语句; (表达式)只能是char型或者int...: printf("%f%c%f=%.2f\n",a,ch,b,a*b);/*输入"x" "X" "*" 都执行这一条语句;不加break,会顺语句执行*/ break; case '/':...\n"); } } 扩展 5.1:C语言中输出格式%m.nf意思 m:表示宽度 .n:表示精度 假设, i=10.1; printf("%5.2f",i); 输出结果为 10.10(m=5,其中空格占

76210

C 语言】指针间接赋值 ( 直接赋值 和 间接赋值 | 在子函数中间接赋值 )

文章目录 一、直接赋值 和 间接赋值 二、在子函数中间接赋值 一、直接赋值 和 间接赋值 ---- 在 函数体 内部 , 声明普通变量 , 直接赋值 : 直接修改该变量 , 称为 直接赋值 ; 简介赋值...: 将该变量地址 赋值 给指针 , 通过 指针 修改内存中变量数据 , 称为 间接赋值 ; 代码示例 : #include #include int main...a = 10; // 第二次打印 a 变量值 printf("a = %d\n", a); // 将 a 地址赋值给 指针变量 p p = &a;..."a = %d\n", a); return 0; } 执行结果 : 二、在子函数中间接赋值 ---- 在 函数体 内部 , 声明普通变量 , 如果 获取该变量地址 , 将该 地址 传递给...a = 10; // 第二次打印 a 变量值 printf("a = %d\n", a); // 将 a 地址赋值给 指针变量 p p = &a;

2.9K10
领券