Linux常量与变量

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

一、常量

1.1整型常量

整型常量可以使用二进制、八进制、十进制、十六进制表示。
例如:0b1111 0231 1111 0xff
对于整型常量一般应整形的变量储存对应的值
根据数据的大小来确定对应的数据类型

#include <stdio.h>

int main(int argc, const char *argv[])
{
    printf("%d\n", 10086);
    printf("%u\n", 10086);
    printf("%#x\n", 0x10086);
    printf("%#o\n", 010010);
    
 // 定义变量存储身高
 short height = 183;
 printf("身高 = %dcm\n", height);
 
 int a = 0b11111111;
 printf("a = %d\n", a);
 printf("a = %#o\n", a);
 printf("a = %#x\n", a);
 
 int b = 0123;
 printf("b 的十进制值 :%d\n", b);
 printf("b 的八进制值 :%#o\n",b);
 printf("b 的十六进制值 :%#x\n", b);
 
 unsigned long x = 0xFFFFFFFFFFFF;
 printf("x = %lu\n", x);  // %lu : 无符号长整形
 printf("x = %#lo\n", x);  // %lo:无符号8进制长整形
 printf("x = %#lx\n", x); // %lx : 无符号16禁止长整形


 return 0;
}

1.2实型常量(浮点型常量)

对于浮点型常量,可以使用浮点型的变量赋值
例如:
小数形式表示
3.13 2.33
科学计数法表示
2.11e2 意思就是 2.1110^2 也就等于211.0
2.11e-2 意思就是 2.11
10^-2 也就等于0.0211
-2.11e2 意思就是 -2.1110^2 也就等于-211.0
-2.11e-2 意思就是 -2.11
10^-2 也就等于-0.0211

#include <stdio.h>

int main(int argc, const char *argv[])
{
 printf("%d\n", 10086);
 printf("%f\n", 3.14);
 printf("%le\n",3.1415);

 float pi = 3.14;
 printf("pi = %f\n", pi); // 默认保留小数点后6位
 printf("pi = %e\n", pi); // %e : 以科学计数法格式输出
 
 double height = 18.0345;
 
 printf("height = %lf\n", height); // double类型使用的格式化字符为%lf
 printf("height = %le\n", height); // %le : 科学计数法输出
 
 double wight = -198.1234;
 printf("wight = %lf\n", wight);  
 printf("wight = %le\n", wight);
 
 // 使用科学计数法对浮点型变量赋值
 double length = 10e-2;
 printf("length = %lf\n", length);
 printf("length = %le\n", length);

 return 0;
}

1.3字符常量

对于 字符常量 用 ’ ’ (单引号)括起来
可以使用字符类型的变量储存
例如 ‘a’ ‘A’ ‘\n’ ‘\102’
字符串在内存中,储存的是字符的ASCII码值
在这里插入图片描述

#include <stdio.h>

int main(int argc, const char *argv[])
{
 // 字符常量
 printf("A = %c\n", 'A');  // 打印A字符
 printf("A char ASCII value = %d\n", 'A');  // 打印字符A的ASCII码值
 return 0;
}

1.4字符串常量

对于 字符串常量 用 " " (双引号)括起来,字符串结尾有一个隐藏的’\0’字符
‘\0’的字符ASCII码值为0
注:可以在终端输入man ascii 可以查看字符对应的ascii码值
可以使用字符串数组或字符指针储存
例如:
“A” “hello” “hello\0world”
字符串分配的空间大小为字符串长度+1(因为有一个隐藏的’\0’)
在这里插入图片描述

1.5标识常量/宏定义

#define 宏定义名 宏定义值
要求:
1)宏定义名一般大写
2)宏定义在预处理阶段展开,直接替换(写什么就替换什么)
3)宏定义的结尾不可以有分号
4)宏定义一般只写一行,如果写多行要用续航符 “”

#include <stdio.h>
#define  SUM        (100+200)
#define  STRING     "hello"
#define  INPUT      printf("i love china \n")
#define  A          'A'
#define  NUMBER      123
int main(int argc, const char *argv[])
{
	printf("SUM=%d\n",SUM);
	printf("SUM=%d\n",600 / SUM);
	printf("STRING=%s\n",STRING);
	INPUT;
	printf("A=%c\n",A);
    printf("NUMBER=%d\n",NUMBER);
	return 0;
}

二、变量

2.1概念

在程序 运行中,可以改变 值的量成为变量

2.2定义变量的格式

<存储类型> <数据类型> 变量名 = 初始值;
1、存储类型(可以省略不写);
6种
auto volatile register static extern const
2、数据类型
基本类型(整型、字符、实型、枚举)
构造类型(数组、结构体、共用体/联合体)
指针类型
short / int / long / long long / char /float /double
前面加 unsigned 表示无符号

2.3变量名 命名规则

1)可以有字母、数字、下划线组成
2)开头不可以是数字
3)严格区分大小写
4)不可以是C语言中的关键字
例如:
Value ✔
_Value ✔
3value ❌

2.4变量命名法

驼峰命名法:
大驼峰命名法::每个单词首字母大写
例如: MaxValue RetValue
小驼峰命名法:首个单词首字母小写,后面单子首字母大写
例如
maxValue retValue
波谷命名法:多个单子之间用下划线隔开
例如:man_value _man_value

##2/5 C语言的关键字 共有32个

数据类型关键字有12 个
char short int long float double enum struct union unsigned signed void
储存类型关键字 有6个
auto volatile register static extern const
类型重定义的关键字 1个
typedef
计算数据类型大小 1个
sizeof
控制语句相关的关键字有12个
if else while break switch case defalut for do continue return goto

2.6定义变量

在这里插入图片描述

#include <stdio.h>

int main(int argc, const char *argv[])
{
 // 1. 先定义变量,后对变了进行初始化
 int a;  // 定义变量, 给变量在内存中分配空间,
    // 分配空间的大小跟变量的类型有关
    // 可以使用变量名访问对应的变量空间内存中的值。
 a = 100; // 将100值写到变量a对应的内存空间中
 printf("a = %d\n", a);
     // 读取变量a对应的内存空间的值
return 0;
}
  • 30
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值