在此记录一下本人写过的那些bug owo。
1)指向数组的指针在malloc前遗记初始化(赋值为NULL)
2)
some_struct * ptr = A;array[1] = *A;
而后就忘了开释ptr...
3)
char * buffer = NULL;size_t sz = 0;while(getline(&buffer, &sz, file) > 0){ ...}
而后遗记开释buffer...
4)
假如line是一个字符串(比方"apple")。
line[2] = '\0';
而后
strchr(line, 'e');
就返回NULL了。因为当初的line是"ap";
5)
int* array = malloc(5 * sizeof(*array));for (int i = 0; i < 5; i++){ free(array + i);}
反复开释内存了。