struct Wifi {
char access[1][2][32];
};for /f "tokens=* delims=" %%g in ('dir /b /s /a-d *.*') do call :s_subroutine "%%~nxg" "%%g"
goto :eof
:s_subroutine
set _sss=%1
set _ddd=%_sss:!=_%
ren %2 %_ddd%
exit /b 0 Переместить всё содержимое папки C:\Users\оля в C:\Users\Olya
В первом цикле проходите весь массив и на каждом элементе вызывайте free() - она нормально проглатывает нулевые указатели.