A function returns a certain number of strings ( uint_32 extensions_count
) and I have to assign each of them in const char* const* extensions
.
The chains are in this structure:
typedef struct VkExtensionProperties {
char extensionName[VK_MAX_EXTENSION_NAME_SIZE];
uint32_t specVersion;
} VkExtensionProperties;
the value of extensions_count
varies around 4 (previously obtained) and the chains are stored in available_extensions
VkExtensionProperties * available_extensions=(VkExtensionProperties*)malloc(sizeof(VkExtensionProperties) * extensions_count );
vkEnumerateInstanceExtensionProperties(NULL, &extensions_count, available_extensions )
The question is how to assign the chains in available_extensions
to extensions
(only C).
const char* extensions[extensions_count];
for(size_t i=0;i < extensions_count; i++){
if(strcmp(VK_KHR_PLATFORM_SURFACE_EXTENSION_NAME,available_extensions[i].extensionName) == 0){
for(size_t j=0;j < extensions_count; j++){
//Aqui la duda
//extensions[j] = available_extensions[j].extensionName;
}
printf("Extension name found\n%s\n",available_extensions[i].extensionName);
break;
}
}
What I normally get is a segment violation and I do not stop there. If possible with strcpy
, I really do not know how to use it in this particular case.
Thank you in advance for the help.