C语言变量,运算符,表达式

第一个C语言程序

#include <stdio.h>

int main(void)

{

    printf("Hello world!\n");

}

打印一个Hello world! (\n换行符)

gcc -o test 1.c

./test


1.#include <stdio.h>

int main(void){

        int a = 5;

// 声明一个整形变量a,初始化为5

//标示符:由字母数字下划线组成,由字母开头,下划线属于字母;不可以用关键字

//关键字:union,int float 等等

        //在内存中开辟4字节空间(int),跟这4个字节起个名字叫做a,将数字5存储到这个空间里

        printf("%d\n",a);


        int b; //在声明时不初始化,在后面给变量赋值,称为赋值

        b = 6;

        return 0;

}

2.short 短整形,short a = 5;2个字节

long 长整形,long a = 5; 8字节64位存储5;

int                        16位cpu占2字节,32位cpu占4字节, 64位cpu占4字节

unsigned int        16位cpu占2字节,32位cpu占4字节, 64位cpu占4字节

short                   16位cpu占2字节,32位cpu占2字节, 64位cpu占2字节

unsigned short  16位cpu占2字节,32位cpu占2字节, 64位cpu占2字节

long                    16位cpu占4字节,32位cpu占4字节, 64位cpu占8字节

unsigned long    16位cpu占4字节,32位cpu占4字节, 64位cpu占8字节

3.int a = 010,表示存储的8进展,转化为10禁止位8;打印也是8,不看怎么存,只看怎么读,不管是2进制2进制还是10进制,16进制,存到内存中都是2进制的补码

#include <stdio.h>

int main (void){

        int a = 010;

        printf(''%d\n",a);   //8  10进制

        printf(''%o\n",a);   //10 8进制

        printf(''%x\n",a);   //8 16进制

        return 0;

}


4.unsigned int a = 8;无符号位整形,4个字节,32位;所有位都表示大小,没负数

0000 0000 0000 0000 0000 0000 0000 1000

1000 0000 0000 0000 0000 0000 0000 1000,最左侧的不是符号位在这里,表示一个很大的数

#include <stdio.h>

int main(void){

        int a = -1;

// 0xFFFFFFFF 补码形式存储

        printf("%d\n",a);  //结果1

        printf("%u\n",a);  //当作无符号位打印结果是4294967295

}


5.字符常量

'A' '*', 字符常量,计算机中是用一个数字存储1个字符的;

#include <stdio.h>

int main (void){

        char _a = 'A';

        printf("%c  %d\n",_a,_a);  //A  65(ASCII)

        return 0;

}

char 在C语言中仍然是整形变量,占1个字节;不同于JAVA,

6.sizeof(),打印字节长度

#include <stdio.h>

int main(void){

        int a = 5;

        int b = 'A';

        printf("%d   %d\n",sizeof(int),sizeof(a));   // 4   4

        printf("%d   %d\n",sizeof(char),sizeof('A'));   // 1   4

        printf ("%d  %c",b,b); //65  A  不看怎么存,只看怎么读

        return 0;

}

7.一个高位数赋值给一个低位数,会发生截断,如果高位数超过当前类型允许的最大值,超过部分直接去掉

位扩展的时候正数补0,负数补1;低位转高位,char a = -1;short b = a;   1111 1111 ->1111 1111 1111 1111

8.实型数据大小

float                 4字节   有效小数位数6-7位

double             8字节   有效小数位数15-16位

long double     16字节   有效小数位数18-19位

9.scanf 输入

#include <stdio.h>

int main(void){

        int a;

        int b;

        scans("%d%d",&a,&b);//输入a和b的值;

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

        return 0;

}

10.不同类型运算时会发生类型转换

char -> short -> int -> unsigned int -> long -> double <- float

a.短字节向长字节看齐:float a = 9.0,char b = 3;a + b 变为float;b先变为float类型再计算

b.有符号位向无符号位看齐

c.整形向浮点型看齐

d.单精度向双精度看齐


11.自增自减运算符

int i = 0,j = 0;

j = i ++;  //取i+之前的值

printf("i == %d,j==%d",i,j);  //1  0

j = i --;  //取i-之前的值

printf("i == %d,j==%d",i,j);  //  0  1

j = ++i;  //取i+之后的值

printf("i == %d,j==%d",i,j);  1  1


int a = ++i++;右结合性,同级运算先算右边;但是这么写也是错的。i++的表达式是一个常量,自增自减运算符是对变量进行的

a += 5; a = a + 5; 效果一样; a *= 5等

12.运算符优先级

!++ --

* / %

+ -

> < >= ==

&&

||

= += 等复合运算符

, 逗号运算符非常低

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352

推荐阅读更多精彩内容

  • 第1章 第一个C程序第2章 C语言基础第3章 变量和数据类型第4章 顺序结构程序设计第5章 条件结构程序设计第6章...
    小狮子365阅读 10,649评论 3 71
  • 1.编译程序(1)gcc xx.c,他会默认生成一个a.out的可执行文件,在a.out所在目录,执行./a.o...
    萌面大叔2阅读 1,276评论 0 1
  • 题目来源:1、中兴、华为、慧通、英华达、微软亚洲技术中心等中外企业面试题目;2、C 语言面试宝典(林锐《高质量编程...
    月震阅读 1,811评论 0 1
  • 屈源芝妈妈亲子日记第321天 3月12日,星期一,晴 早上一大早,女儿起床后对我说:“妈妈,赶紧再看看群里还有谁报...
    月儿贝贝阅读 230评论 0 2
  • 本文部分内容,来自于@行者慎思的微信分享,特此感谢。 在近期参加了简书-产品交流微信群组织的一次微信线上分享,@行...
    时凤卫阅读 2,618评论 0 4