История изменений
Исправление
DELIRIUM,
(текущая версия)
:
В C у пустых структур sizeof() == 0. Что не мешает создавать переменные типа пустой структуры, брать адрес этих переменных и передавать их в функции.
Ого, ништяк, я не знал. Спасибо. В крестах sizeof пустой структуры по стандарту ИМХО >= 1.
// test.c
#include <stdio.h>
struct penis {
};
int main(int argc, char **argv) {
printf("size of penis: %zu\n", sizeof(struct penis));
return 0;
}
// test.cpp
#include <cstdio>
struct penis {
};
int main(int argc, char **argv) {
printf("size of penis: %zu\n", sizeof(penis));
}
$ clang -o test.c ./test.c && ./test.c
size of penis: 0
$ clang++ -o testcpp ./test.cpp && ./testcpp
size of penis: 1
Исправление
DELIRIUM,
:
В C у пустых структур sizeof() == 0. Что не мешает создавать переменные типа пустой структуры, брать адрес этих переменных и передавать их в функции.
Ого, ништяк, я не знал. Спасибо. В крестах sizeof пустой структуры по стандарту ИМХО >= 1.
// test.c
#include <cstdio>
struct penis {
};
int main(int argc, char **argv) {
printf("size of penis: %zu\n", sizeof(penis));
}
// test.cpp
#include <cstdio>
struct penis {
};
int main(int argc, char **argv) {
printf("size of penis: %zu\n", sizeof(penis));
}
$ clang -o test.c ./test.c && ./test.c
size of penis: 0
$ clang++ -o testcpp ./test.cpp && ./testcpp
size of penis: 1
Исходная версия
DELIRIUM,
:
В C у пустых структур sizeof() == 0. Что не мешает создавать переменные типа пустой структуры, брать адрес этих переменных и передавать их в функции.
Ого, ништяк, я не знал. Спасибо. В крестах sizeof пустой структуры по стандарту ИМХО >= 1.