C语言学习中记录的小知识点

1、(char *)a的意思

(char*)a的意思是:将a强制类型转换为字符指针类型。
char*是C语言中,用于定义指针的变量符号。比如:char *p; 这个变量p是个指针变量;就是说,p这个变量里能存储一个char类型的变量的首地址。

字符指针是指向类型为unsigned char的指针变量。
例如:
unsigned char ch = 'a';
unsigned char *ch_p = &ch;
那么指针变量ch_p就是字符指针

例如:char *my_msg = (char *)calloc(1, length + 1);

注:void* calloc (size_t num, size_t size);用来动态地分配 num 个长度为 size 字节内存空间并初始化为 0,分配成功返回指向该内存的地址,失败则返回 NULL。

2、switch的用法

eg:

#include <stdio.h>
#include <stdlib.h>
int main()
{
    enum color {red=1,green,blue};
    enum color favorite_color;
    printf("please input your like color:(1.red,2.green,3.blue):");
    scanf("%d",&favorite_color);  
    switch(favorite_color)
    {
        case red:
        case green:
            printf("green");
             break;
        case blue:
            printf("blue");
                break;
      default:
          printf("no like color!");
    }
    return 0;
}

注:case red: 和case green: 都会执行printf("green");

猜你喜欢

转载自blog.csdn.net/weixin_43025071/article/details/88249833