问题:
https://leetcode-cn.com/problems/cells-in-a-range-on-an-excel-sheet/
问题相关代码
/**
* Note: The returned array must be malloced, assume caller calls free().
*/
char ** cellsInRange(char * s, int* returnSize){
char **a=(char **)malloc(sizeof(char*)*3000);
int u=0;
int up=s[1]-'0';
int down=s[4]-'0';
int left=s[0]-'A';
int right=s[3]-'A';
for(int i=left;i<=right;i++){
for(int j=up;j<=down;j++){
char *p=(char *)malloc(sizeof(char)*2);
char e=j+'0';
char d=i+'A';
p[0]=d;
p[1]=e;
strcpy(a[u],p);
u++;
}
}
*returnSize=u;
return a;
}
==42==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x602000000032 at pc 0x7f1bf3c18060 bp 0x7fff042eb970 sp 0x7fff042eb118
求问这个报错是怎么回事呢?要怎么解决呀?