память, выделенную только что malloc'ом?
struct S { int val; }
void main() {
struct S* s = (struct S*) malloc(sizeof(struct S)); // то есть как вот эту структуру именно проинициализировать
struct S s2 = { 5 }; // так же, как и эту например
}
Проинициализировать нельзя. Потому что переменная не создаётся языковыми средствами и инициализатор туда поставить невозможно. Можно только заполнить, присвоить туда значение. Это делается простым присваиванием
А если у меня в этой структуре S есть поле-мютекс из posix threads, и его нужно проинициализировать по идее значением PTHREAD_MUTEX_INITIALIZER Как выкрутится, если структура нужна бы в динамической памяти именно(
Pisread metax initilazer- это просто значение её можно просто скопировать из какого-то места или из области данных констант той же функции memcpy либо присваиванием
Обсуждают сегодня