如何在onec上对整个阵列进行malloc?在C中
如何将文件路径的malloc数组设置为非文件路径中每个idx的malloc数组如何在onec上对整个阵列进行malloc?在C中,c,C,如何将文件路径的malloc数组设置为非文件路径中每个idx的malloc数组 我需要的是文件路径[file\u path\u idx]=char*mallocstrlenfpath+1;上面的for循环和strcpy将正常工作?您可以分配一块内存,其中包含大小为\u的\u文件*strlenfpath+1字节。然后,您可以在制作fpath副本时对此进行索引 一次分配,一次取消分配。100次分配,100次取消分配。比较正确吗?文件\u路径\u idx>N;然而,文件路径idx++正在增加。也许应该
我需要的是文件路径[file\u path\u idx]=char*mallocstrlenfpath+1;上面的for循环和strcpy将正常工作?您可以分配一块内存,其中包含大小为\u的\u文件*strlenfpath+1字节。然后,您可以在制作fpath副本时对此进行索引
一次分配,一次取消分配。100次分配,100次取消分配。比较正确吗?文件\u路径\u idx>N;然而,文件路径idx++正在增加。也许应该是file_path_idx
# define size_of_files 100
char* file_paths[size_of_files];
for(int file_path_idx = 0; file_path_idx < N; file_path_idx++)
{
file_paths[file_path_idx] =(char*)malloc(strlen(fpath)+1);
strcpy(file_paths[file_path_idx],fpath);
}
# define size_of_files 100
char* file_paths[size_of_files];
size_t pathlen = strlen(fpath)+1;
char *all_paths = malloc(size_of_files * pathlen);
for(int file_path_idx = 0; file_path_idx < N; file_path_idx++)
{
file_paths[file_path_idx] = &all_paths[file_path_idx * pathlen];
strcpy(file_paths[file_path_idx], fpath);
}