kostikp (04.07.2009 17:52, просмотров: 1593) MBedder
Вопрос по модулю FAT от CHAN(C): char *ptr;
ptr="0:";
при вызове ф-ии scan_files(ptr) выводит FR_INVALID_NAME
выявил, что вроде глючит в этой ф-ии:
FRESULT create_name (
DIR *dj, /* Pointer to the directory object */
const XCHAR **path /* Pointer to pointer to the segment in the path string */
)
{ ....
//no lfn
BYTE b, c, d, *sfn;
int ni, si, i;
const char *p;
/* Create file name in directory form */
sfn = dj->fn;
mem_set(sfn, ' ', 11);
si = i = b = 0; ni = 8;
p = *path;
....
c = p[si++];
printf("PATH[%d]=%c\n",si-1,c); //insert by me
}
вот что выводит на монитор:
19:37:23.468> p = 0:
19:37:23.531> PATH[0]=@
19:37:23.593> PATH[1]=@
19:37:23.593> PATH[2]=@
19:37:23.593> PATH[3]=@
19:37:23.593> PATH[4]=@
19:37:23.593> PATH[5]=@
19:37:23.593> PATH[6]=@
19:37:23.656> PATH[7]=@
19:37:23.656> PATH[8]=@
не пойму как так: строку выводит(0:), а отдельно символы не правильно.
что не так ?