Я пытаюсь понять таНос, но я получаю «ошибку сегментации: 11» с этим фрагментом кода:C таНос (ошибка сегментирования: 11)
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i = 0, j = 0;
char ** ptr = (char **) malloc(sizeof(char*));
for(i = 0; i < 5; i++)
{
for(j = 0; j < 10; j++)
ptr[i][j] = 'a';
printf("%s\n", ptr[i]);
}
return 0;
}
я думал, что не было достаточно байт выделено так, я сделал malloc(sizeof(char*) * 100
, но дает мне ту же ошибку. Что я здесь не понимаю?
'ptr [i]' - указатель, но на что он указывает? – Quentin
Не указывает ли оно на начало выделенной памяти? Если я просто делаю 'char * ptr = (char *) malloc (sizeof (char))' и убираю второй оператор цикла, он отлично работает. – neby
'ptr', но' ptr [0] 'не делает. – Olaf