stdio.h管输入输出
stdlib.h管内存(如malloc,free)

malloc开辟空间
(int*)malloc(4) 开辟4字节空间,但每次申请空间最小4KB(每次申请空间4KB起步)

C语言允许越界操作


C语言数组能够越界访问,不会报错
溢出读和写都属于攻击
溢出读,能读到越界数据,能读到其它程序在允许什么数据
溢出写,能造成越界攻击,导致其它程序崩溃



指针类型在做sizeof计算的时候只算它的第一个元素有多大
指针所指向的区域我们无法通过指针来计算它的大小,非指针类型指向的区域是可以的

如果是sizeof(指针)只计算指针所指向区域的第一个元素大小
面试点

C,Java只有值传递,C++有值传递和引用传递
C和C++中,函数的入参,传数组只能是指针类型


在C语言和C++中,函数的入参传数组只能是指针类型
上述图片函数中的int arr[10]默认转化成下图函数中的int* arr

数组作为参数传参时通常要带上另外的数字,来表示传过来的数组有多少个数据

1609

被折叠的 条评论
为什么被折叠?



