运算符
算术运算符
关键词:+,-,*,/,%,++,–
关系运算符
关键词:==,!=,>,<,>=,<=
逻辑运算符
关键词:&&,||,!
位运算符
关键词:&,|,^,~,<<,>>
赋值运算符
关键词:=,+=,-=,*=,/=,%=,<<,>>,&=,^=,|=
杂项运算符
关键词:sizeof(),&,*,?
运算符优先级
typedef 以及它的特殊用法 typedef void* (fun)(void)
简单用法
复杂用法学习自:https://blog.csdn.net/weixin_42255385/article/details/82261774
举个栗子:
typedef int a[10]; /* 声明为具有10个int元素的数组的类型别名 */
typedef void (*p)(void); /* p是一种函数指针的类型别名。 */
free函数
C 库函数 void free(void *ptr) 释放之前调用 calloc、malloc 或 realloc 所分配的内存空间。
alloc函数
学习自https://www.cnblogs.com/youngforever/articles/3129130.html
alloc(size_t size);
与其他的内存分配不同,因为它是在栈上分配了size大小的内存,因此使用此函数分配的内存不用再担心内存释放的情况了。但是使用此函数需要注意的是:在函数内部使用此函数分配的内存随着函数的终结不复存在,因此不能将此函数分配的内存供函数外部使用。
calloc函数
学习自https://www.cnblogs.com/youngforever/articles/3129130.html
它将分配count个size大小的单原,因此在便用此函数的时候就会很方便,比如对上面的例子就可以:(student_t *)calloc(sizeof(t_student), N)就可以了。这样使用就会很清晰的知道分配的内存是一种什么样的逻辑方式。
malloc函数
学习自:http://www.169it.com/it-c-cpp/article-malloc-3931680852687529154
malloc函数向系统申请分配size个字节的内存空间。返回值类型是 void* 类型。void* 表示未确定类型的指针。c,c++规定,void* 类型可以强制转换为任何其它类型的指针。
#include<stdio.h>
#include<malloc.h>
int main()
{
char *p;
p=(char *)malloc(100);
if(p)
printf("Memory Allocated at: %x/n",p);
else
printf("Not Enough Memory!/n");
free(p);
return 0;
}