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”);
还没有评论,来说两句吧...