二、数据类型、变量、常量和运算符介绍

     1. 数据类型

数据类型描述示例占用字节(典型)
整型
int基本整型int a = 10;4字节
short短整型(范围更小)short b = 5;2字节
long长整型(范围更大)long c = 100000L;4或8字节
unsigned无符号整型(仅非负值)unsigned int d = 5;int
浮点型
float单精度浮点数float e = 3.14f;4字节
double双精度浮点数(更高精度)double f = 3.14159;8字节
字符型
char单个字符或ASCII值char g = 'A';1字节
无值型
void表示无类型(用于函数或指针)void func();

派生类型(需结合基础类型定义):

  • 数组:int arr[5] = {1, 2, 3, 4, 5};

  • 指针:int *ptr = &a;

  • 结构体:

    struct Student {
        char name[20];
        int age;
    };

        2. 变量

    变量是程序运行时可以修改的存储单元,需先声明类型后使用。

  • 声明与初始化:

    int a = 10;       // 声明并初始化整型变量
    float b = 3.14f;  // 声明单精度浮点变量
    char c = 'C';     // 声明字符变量
  • 作用域:

    • 局部变量:在函数或代码块内声明,仅在其范围内有效。

    • 全局变量:在函数外声明,整个程序可见。

      3. 常量

      常量是程序运行中不可修改的值。C语言定义常量的两种方式:

    • const关键字(类型安全):

      const float PI = 3.14159f;  // 定义浮点常量
      const int MAX = 100;        // 定义整型常量
    • #define宏定义(预处理阶段替换):

      #define PI 3.14159
      #define MAX 100

      4. 运算符

      C语言支持多种运算符,按功能分类如下:

      (1) 算术运算符
      运算符描述示例结果
      +5 + 38
      -10 - 46
      *3 * 412
      /10 / 33(整数除法)
      %取模10 % 31
      ++自增a++a = a + 1
      --自减a--a = a - 1
      (2) 关系运算符
      运算符描述示例结果
      ==等于5 == 51(真)
      !=不等于5 != 31
      >大于10 > 51
      <小于3 < 20(假)
      >=大于等于7 >= 71
      <=小于等于5 <= 30
      (3) 逻辑运算符
      运算符描述示例结果
      &&逻辑与(5 > 3) && (2 < 4)1
      ``逻辑或`(5 > 3)(2 > 4)`1
      !逻辑非!(5 == 3)1
      (4) 位运算符
      运算符描述示例结果(二进制)
      &按位与5 & 3(0101 & 0011)0001(1)
      ``按位或`53`(01010011)0111(7)
      ^按位异或5 ^ 3(0101 ^ 0011)0110(6)
      ~按位取反~5(~0101)1010(-6,补码)
      <<左移5 << 1(0101→1010)10(10)
      >>右移5 >> 1(0101→0010)2(2)
      (5) 赋值运算符
      运算符描述示例(等价于)
      =直接赋值a = 5;
      +=加后赋值a += 3; → a = a + 3;
      -=减后赋值a -= 2; → a = a - 2;
      *=乘后赋值a *= 4; → a = a * 4;

        5. 注意事项

  1. 类型转换:

    • 隐式转换:小类型向大类型自动转换(如intfloat)。

    • 显式转换:强制类型转换,如 (float)5 / 2 → 2.5

  2. 运算符优先级:

    • 从高到低:() → ++ -- → * / % → + - → > < → == != → && → || → =.

  3. 未初始化变量:局部变量未初始化时值为随机数,可能导致程序错误。

示例代码:

#include <stdio.h>

#define PI 3.14159    // 宏定义常量

int main() {
    // 变量声明与初始化
    int a = 10;
    float b = 3.14f;
    char c = 'C';
    const int MAX = 100;  // const常量

    // 算术运算
    int sum = a + 5;      // 15
    float div = (float)a / 3;  // 3.333...

    // 关系与逻辑运算
    if (a > 5 && b < 4.0) {
        printf("条件成立!\n");
    }

    // 位运算
    int bitwise = 5 & 3;  // 1(二进制 0101 & 0011 = 0001)

    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值