C语言知识4

在这个版本中,我将继续添加一些C语言的常用知识点,包括预处理指令、动态内存管理、多文件项目的组织等。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

// 预处理指令
#define SQUARE(x) ((x) * (x))

// 定义结构体
struct Person {
    char name[50];
    int age;
};

// 定义枚举类型
enum Status {
    OK,
    ERROR
};

// 定义宏
#define MAX(x, y) ((x) > (y) ? (x) : (y))

// 函数原型
void printMessage(const char *message);

int main() {
    // 变量声明和初始化
    int a = 5;
    int b = 8;

    // 预处理指令
    printf("Square of a: %d\n", SQUARE(a));

    // 使用条件语句
    if (a > b) {
        printf("a is greater than b\n");
    } else {
        printf("b is greater than a\n");
    }

    // 使用循环
    for (int i = 0; i < 3; ++i) {
        printf("Iteration %d\n", i);
    }

    // 使用数组
    int numbers[] = {1, 2, 3, 4, 5};
    for (int i = 0; i < 5; ++i) {
        printf("%d ", numbers[i]);
    }
    printf("\n");

    // 使用字符串和字符串函数
    char str1[] = "Hello";
    char str2[50];
    strcpy(str2, " World!");
    strcat(str1, str2);
    printf("Concatenated string: %s\n", str1);

    // 使用函数
    printMessage("Hello, World!");

    // 使用结构体
    struct Person person1 = {"Alice", 25};
    printf("Person: %s, Age: %d\n", person1.name, person1.age);

    // 使用枚举类型
    enum Status status = OK;
    if (status == OK) {
        printf("Operation successful\n");
    } else {
        printf("Error occurred\n");
    }

    // 使用宏
    int maxNumber = MAX(a, b);
    printf("Maximum number is: %d\n", maxNumber);

    // 使用指针和动态内存分配
    int *dynamicArray = (int *)malloc(3 * sizeof(int));
    dynamicArray[0] = 10;
    dynamicArray[1] = 20;
    dynamicArray[2] = 30;
    printf("Dynamic Array: %d, %d, %d\n", dynamicArray[0], dynamicArray[1], dynamicArray[2]);
    free(dynamicArray);

    // 使用文件操作
    FILE *file = fopen("example.txt", "w");
    if (file != NULL) {
        fprintf(file, "This is a sample file.\n");
        fclose(file);
    }

    // 使用位运算
    unsigned int x = 5;  // 0000 0101
    unsigned int y = 3;  // 0000 0011
    unsigned int result = x & y;  // 0000 0001
    printf("Bitwise AND result: %u\n", result);

    // 使用类型转换
    float floatValue = 3.14;
    int intValue = (int)floatValue;
    printf("Converted Integer: %d\n", intValue);

    return 0;
}

// 函数定义
void printMessage(const char *message) {
    printf("Message: %s\n", message);
}

在这个版本中,我添加了预处理指令,展示了预处理指令的基本用法。同时,我还增加了对位运算和类型转换的示例。这样,这个示例程序就更全面地覆盖了C语言的一些常用知识点。请注意,这仍然是一个简化的例子,实际项目可能更为复杂。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值