Найдите и объясните ошибку в C‑фрагменте: char *f(){ char *s = malloc(10); strcpy(s, "hello"); free(s); return s; } — что произойдёт при использовании возвращённого указателя, какие инструменты (ASAN, Valgrind) и техники (умные указатели, RAII) помогут обнаружить и предотвратить такие ошибки и как корректно переписать функцию