C语言的合法标识符与整型详解

 更新时间:2022年02月16日 15:29:44   作者:D_eretay  
这篇文章主要为大家详细介绍了C语言的合法标识符与整,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

首先我们来介绍一下,一开始学习c语言最先遇到的头文件是什么

头文件

又名工具箱

提供一系列方法(工具)

#include <stdio.h> 
#include "stdio.h"

<>: 直接在系统目录进行查找 找不到会直接报错

" ": 先在当前目录下进行查找 找不到再在系统目录进行查找 找不到会直接报错

总结: 一般为了提高效率是会使用" "而不是<>

一般情况下,系统文件使用<> 自定义文件一般会放在当前目录 所以使用" "

常量

常量通常有以下内容

  • 整型常量 比如:1、100、999、6366
  • 实型常量 比如:1.0、3.14
  • 字符常量 比如:'A'、'a'、'1'
  • 字符串常量 比如:"aA1"
  • 符号常量 利用#define 来定义的常量
  • 地址常量

变量

  • 变量:代表着一个具有名字的,具有特定属性的一个存储单元. 可以用来存储数据(变量的值)
  • 变量必须先定义后使用.变量的命名必须符合规范

命名规范

  • 由数字,字母,下划线组成
  • 开头不能是数字(一般情况下不会使用下划线开头)
  • 不能是关键字

注意:

  • 区分大小写
  • 命名法 命名习惯
  • 要根据其要写的意思来写其名字

举例:

// 我们要描述游戏中某个角色的血量(数据==>存储在内存中) 
// 这块内存 我们给他取一个名字 ==> 变量名 
​
例子:
hp xueliang a b abc hp HP 
a1 b2_ 
错误示范: 
123 1a

合法的浮点数

小数与指数

  • 小数
  • 指数(科学计数法: n*10^m eE)如:3.14e3

char与八进制

以下通过代码来举例

数字与数字字符

'\0' 结束符(字符串) 
// A: -128 -- 127 B: 0 -- 255 
// 0 -- 255 ==> 0 -- 0377 
char ch; 
ch = '\0'; 
printf("ch = 0%o\n", ch); 
ch = '\377'; 
printf("ch = 0%o\n", ch); 
// 1 为什么会多八个7 
// 2 假如超过377会怎么样 
// 整型提升 
// char类型在运算时 会提升为int类型 
// 运算结束之后 会还原为原来的类型

大小写转换

// 'A': 65 
// 'a': 97 
// '0': 48 
// 1 '0'==>0 
char ch = '0'; 
ch = ch - ('0' - 0);// 减去差值 
printf("数字: %d\n",ch); // 0 
// 2 0==>'0' 
// 'A' ==> 'a' 
char ch1 = 'A'; 
ch1 = ch1 + ('a'-'A'); 
printf("%c\n", ch1); // a

sizeof()

// 运用:sizeof() 运算符 
/*
字符: '' 
字符串: "" "" "a" "123" 
*/
printf("%d\n", sizeof("")); // "\0" 
printf("%d\n", sizeof("a")); // "a\0" 
printf("%d\n", sizeof("123")); // "123\0" 
printf("%d\n", sizeof("ab12\\1234\0ab")); // 
printf("%d\n", sizeof("\1a")); // 
printf("%d\n", sizeof("\128")); // 3

作用: 求字节数,求()里面的对象在内存中占几个字节

一般情况下:

位=字节

一个字节为八位

short sh = 0; 
printf("%d\n", sizeof(sh)); 
printf("%d\n", sizeof(short));

取值范围

做小值----最大值

无符号的: 0-65535 (65536)

有符号的: -32768--0--32767 (65536)

数据溢出

数据的大小超过了当前类型能够表示的范围

使用时机:

会在数据存储的时候溢出

处理方式:(自动调整)

  • 数据太大:将数据减去n个范围大小
  • 数据太小:将数据加上n个范围大小

范围大小:当前类型能够表示的数据的个数

整型

数据类型

short: 短整型
int: 整型 
long: 长整型 
long long: 长长整型 

是一类数据类型,包括:

short int long long long 
// 定义了一个int类型的变量 
// 给变量取名为hp 
// 将变量初始化为100 
int hp = 100; 
// 定义了一个int类型的变量 
// 给变量取名为num 
int num; 
// 给num赋值为0 
num = 0; 
注意: 
1 整数默认是int类型 
2 整数之间进行运算,结果还是整数
// 输出语句 
// 1 简单 
printf("hello world!\n"); 
// 2 稍微有难度 
printf("num的值是:%d\n", num); 
// 3 有点难度 
printf("hp = %d, num = %d\n", hp, num);
// 输出语句 
// 1 简单 
printf("hello world!\n"); 
// 2 稍微有难度 
printf("num的值是:%d\n", num); 
// 3 有点难度 
printf("hp = %d, num = %d\n", hp, num); 
#include <stdio.h> 
int main() 
{ 
    short sh = 1; 
    int num = 10; 
    long n = 100; 
    long long m = 1000; 
    /*
    short: 短整型
    int: 整型 
    long: 长整型 
    long long: 长长整型 
    short int sh = 1; 
    int num = 10; 
    long int n = 100; 
    long long int m = 1000; 
    */
    /*
    他们都是整型 都可以用来定义整型变量 
    那么 我们应该怎么选择类型呢? 
    */
    // 现象: 
    short s = 0; 
    printf("s = %d\n", s); 
    s = 100; 
    printf("s = %d\n", s); 
    s = 32768; 
    printf("s = %d\n", s); 
    s = 32769; 
    printf("s = %d\n", s); 
    // 分析: 
    // 数据出现了变化==>可能是数据太大了 
    // 知识: 
    // 数据溢出(1范围 2溢出) 
    return 0; 
}

面向过程

首先c语言通常写程序是面向过程为主,以下介绍其流程

流程

程序执行的流程: 从上往下,逐句执行;遇到特定的语法结构,按照语法规则执行

入口、出口

// 每一个项目 有且仅有一个入口 
// 主函数 入口函数 main函数 
int main() 
{ 
    //代码有效区
return 0; 
    //代码无效区
}
或者
void main() 
{ 
​
} 

注释

// 单行注释 
/* 
多行注释 
1
2
3
.... 
*/

进制转换

计量方式(满几进一 就是几进制)

  • 十进制: 满10进一
  • 十六进制: 满16进一
  • 二进制和八进制的表示
  • 二进制:0b 0B
  • 八进制:0

数位上的数字

表示(特征)

举例

  • 二进制 0 1 只有0和1 10100101
  • 八进制 0 1 2 3 4 5 6 7 0开头 01457
  • 十进制 0 1 2 3 4 5 6 7 8 9 没有特殊要求 666
  • 十六进制
  • 0x开头 0 1 2 3 4 5 6 7 8 9 a b c d e f 0x12af
  • 0X开头 0 1 2 3 4 5 6 7 8 9 A B C D E F 0X34CD

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!  

相关文章

  • 深入解析C中的数值与真假

    深入解析C中的数值与真假

    本篇文章是对C中数值与真假进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • Objective-C不带加减号的方法实例

    Objective-C不带加减号的方法实例

    显而易见的事实是,Objective-C 中,+ 表示类方法,- 表示实例方法,这篇文章主要给大家介绍了关于Objective-C不带加减号的相关资料,需要的朋友可以参考下
    2021-06-06
  • opencv实现图像平移

    opencv实现图像平移

    这篇文章主要为大家详细介绍了opencv实现图像平移,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-08-08
  • C C++算法题解LeetCode1408数组中的字符串匹配

    C C++算法题解LeetCode1408数组中的字符串匹配

    这篇文章主要为大家介绍了C C++算法题解LeetCode1408数组中的字符串匹配示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Qt扫盲篇之QRegExp正则匹配类总结

    Qt扫盲篇之QRegExp正则匹配类总结

    这篇文章主要给大家介绍了关于Qt扫盲篇之QRegExp正则匹配类总结的相关资料,QRegExp是Qt框架中的一个类,用于进行正则表达式的匹配和处理,它提供了多种模式来匹配不同的字符串,需要的朋友可以参考下
    2023-12-12
  • C++文件读取的4种情况汇总

    C++文件读取的4种情况汇总

    前几天要用到C++读取文本文件,就学习了一下几种不同的读取方法,下面这篇文章主要给大家介绍了关于C++文件读取的4种情况,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • C语言键盘控制走迷宫小游戏

    C语言键盘控制走迷宫小游戏

    这篇文章主要为大家详细介绍了C语言键盘控制走迷宫小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • 浅析Boost智能指针:scoped_ptr shared_ptr weak_ptr

    浅析Boost智能指针:scoped_ptr shared_ptr weak_ptr

    虽然通过弱引用指针可以有效的解除循环引用,但这种方式必须在程序员能预见会出现循环引用的情况下才能使用,也可以是说这个仅仅是一种编译期的解决方案,如果程序在运行过程中出现了循环引用,还是会造成内存泄漏的
    2013-09-09
  • C语言文字艺术之数据输入输出

    C语言文字艺术之数据输入输出

    这篇文章主要介绍了C语言文字艺术之数据输入输出,C语言的语句用来向计算机系统发出操作指令。一条语句编写完成经过编译后产生若干条机器指
    2022-07-07
  • C++编译/编辑器对OIer的必要功能(推荐)

    C++编译/编辑器对OIer的必要功能(推荐)

    这篇文章主要介绍了C++编译/编辑器对OIer的必要功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04

最新评论