鱼C论坛

 找回密码
 立即注册
查看: 2363|回复: 0

[技术交流] C语言知识点备忘-0727-1【8】

[复制链接]
发表于 2017-7-27 18:13:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
【字符类型】
是特殊的整数类型,signed char取值为-128~127,unsigned char 取值0~255。C标准规定普通整数默认signed修饰符,而char类型的默认修饰符由编译系统决定。
ASCII码
字符表
【字符串】-一串字符
声明语法:
char name[6] = {'F', 'i', 's', 'h', 'C', '\0'};

char a[] = {'F', 'i', 's', 'h', 'C', '\0'};

char a[] = {"FishC"};
char a[] = "FishC";
【算术运算符】
加、减、乘、除、取余、正、负。[+,-,*,/,%,+,-]
这里整数除法结果直接去掉小数位,而不是四舍五入。
其中除了正负是单目运算符外,其他都是双目运算符。这里目表示操作数的个数。
求余需要是整数运算。
【表达式】-运算符和括号将操作数连接起来的式子叫表达式。
【运算符的优先级与结合性】
点击这里查看


一个运算符的几个不同操作数的类型必须要相同,这里分两种情况。
第一,编译器会自行将类型转换,通常情况下,是将内存单元较小的操作数进行类型转换,为了确保计算的精确性。
第二,我们可以自己进行强制转换。做法如下:
(int)'A'+6



【关系运算符】
双目运算符,优先级低于算术运算符,高于赋值运算符。其结合性均为从左到右。
关系运算符有
  • > (大于)、< (小于)、>=(大于等于)、<=(小于等于) 【这四个为同一优先级,高】
  • ==(等于)、!=(不等于) 【这两个为同一优先级,低】


【表达式】
用关系运算符将变量、数据或表达式连接起来,称为关系表达式。其值为逻辑值真或假,即1或0。
用逻辑运算符将变量、数据或表达式连接起来,称为逻辑表达式。其值为逻辑值真或假,即1或0。
这里,逻辑表达式,当我们自己给编译系统一个值让其判断真假的话,那么用0表示假,用任何非零数值表示真。
【逻辑运算符】

  • 逻辑非  ! 优先级高,真变假,假变真
  • 逻辑与  &&  优先级中,一假为假,全真才真
  • 逻辑或  ||  优先级低,一真为真,全假才假      


【短路求值】
也称最小化求值,是逻辑运算符的求值策略。
只要最终的结果已经可以确定为真或假,求值过程便可终止,此为短路求值。
#include <stdio.h>

int main()
{
        int a = 3, b = 3;

        (a = 0) && (b = 5);
        printf("a = %d, b = %d\n", a, b);

        (a = 1) || (b = 5);
        printf("a = %d, b = %d\n", a, b);

        return 0;
}
比如这一堆代码,其结果为:
a=0,b=3;
a=1,b=3;
特通俗的讲,就是b的值连看都不看程序就跑完了

今天就这些吧。

评分

参与人数 1鱼币 +4 收起 理由
小甲鱼 + 4 支持楼主!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-30 15:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表