Size: a a a

2020 March 07

Т8

Т-34 85 in rust_offtopic
Такое себе измерение. Надо компайлить под ту платформу, куда надо
источник

G

Gymmasssorla in rust_offtopic
struct foo {
   int array[5];
};

struct foo *a = malloc(sizeof(struct foo));

struct bar {
   int *array
};

struct bar *b = malloc(sizeof(struct bar));

Разный размер памяти потребуют маллоки
источник

G

Gymmasssorla in rust_offtopic
источник

G

Gymmasssorla in rust_offtopic
источник

G

Gymmasssorla in rust_offtopic
Вот из стандарта определения
источник

AZ

Alex Zhukovsky in rust_offtopic
Т-34 85
Такое себе измерение. Надо компайлить под ту платформу, куда надо
мне кроме винды ничо не надо
источник

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
в си указатель и массив это одно и то же
Нет, это разные вещи. Недавно обсуждали. Следствие слабой типизации

https://t.me/supapro/623595
источник

AZ

Alex Zhukovsky in rust_offtopic
Gymmasssorla
struct foo {
   int array[5];
};

struct foo *a = malloc(sizeof(struct foo));

struct bar {
   int *array
};

struct bar *b = malloc(sizeof(struct bar));

Разный размер памяти потребуют маллоки
int array[5] в структуре это просто 5 инлайн интов подряд да
источник

AZ

Alex Zhukovsky in rust_offtopic
ну ладно, уговорил
источник

AZ

Alex Zhukovsky in rust_offtopic
давай вернемся к тому вопросу с чарами
источник

AZ

Alex Zhukovsky in rust_offtopic
какая длинна у массива должна быть в который ты сериализуешь?
источник

AL

Andrey @ozkriff Lesn... in rust_offtopic
Т-34 85
Такое себе измерение. Надо компайлить под ту платформу, куда надо
а в чем проблема-то? большие хеловорлды никогда не были реальной проблемой, но вон же специально для пугливых/ленивых потенциальных пользователей специально этот вопрос тоже заоптимизировали - сейчас на всех таргетах статически связанный helloworld весит не больше пары сотен кб.
источник

Т8

Т-34 85 in rust_offtopic
Andrey @ozkriff Lesnikov
а в чем проблема-то? большие хеловорлды никогда не были реальной проблемой, но вон же специально для пугливых/ленивых потенциальных пользователей специально этот вопрос тоже заоптимизировали - сейчас на всех таргетах статически связанный helloworld весит не больше пары сотен кб.
Проблема в том, что надо приспосабливаться под конкретный компилятор. А он не всегда норм оптимизирует, не всегда придерживается стандарта. Ну и плюс, возможно, pe формат накладывает разный оверхед. Но ладно - где сишная версия?
источник

Т8

Т-34 85 in rust_offtopic
Подозреваю, просто растовский вывод получается тяжелее и медленнее
источник

G

Gymmasssorla in rust_offtopic
Alex Zhukovsky
какая длинна у массива должна быть в который ты сериализуешь?
хотелось бы сумма всех сериализованных значений. встаёт вопрос "а как сделать структуру с массивом, размер которого определяется в момент создания объекта?". для этого мы используем flexible array member. но вот беда: обычно структуру с FAM создают при помощи динамической аллокации, а мы хотим на стеке. то есть на стеке под переменную нам нужно уметь резервировать достаточно места для FAM. это можно сделать, сначала создав массив из char с нужной размерностью, а потом этот массив отобразить в структуру с FAM.
источник

AL

Andrey @ozkriff Lesn... in rust_offtopic
Т-34 85
Проблема в том, что надо приспосабливаться под конкретный компилятор. А он не всегда норм оптимизирует, не всегда придерживается стандарта. Ну и плюс, возможно, pe формат накладывает разный оверхед. Но ладно - где сишная версия?
$ cat hi.c 
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char** argv) {
 printf("Hi\n");
 return EXIT_SUCCESS;
}

$ gcc -o hic hi.c -static
$ ./hic
Hi
$ ls -lh hic
-rwxrwxr-x 1 ozkriff ozkriff 843K мар  7 12:08 hic
$ strip hic
$ ls -lh hic
-rwxrwxr-x 1 ozkriff ozkriff 772K мар  7 12:09 hic
источник

а

а это кто in rust_offtopic
Andrey @ozkriff Lesnikov
$ cat hi.c 
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char** argv) {
 printf("Hi\n");
 return EXIT_SUCCESS;
}

$ gcc -o hic hi.c -static
$ ./hic
Hi
$ ls -lh hic
-rwxrwxr-x 1 ozkriff ozkriff 843K мар  7 12:08 hic
$ strip hic
$ ls -lh hic
-rwxrwxr-x 1 ozkriff ozkriff 772K мар  7 12:09 hic
в данной ситуации лучше скриншот)
источник

AZ

Alex Zhukovsky in rust_offtopic
Gymmasssorla
хотелось бы сумма всех сериализованных значений. встаёт вопрос "а как сделать структуру с массивом, размер которого определяется в момент создания объекта?". для этого мы используем flexible array member. но вот беда: обычно структуру с FAM создают при помощи динамической аллокации, а мы хотим на стеке. то есть на стеке под переменную нам нужно уметь резервировать достаточно места для FAM. это можно сделать, сначала создав массив из char с нужной размерностью, а потом этот массив отобразить в структуру с FAM.
ну короч ты поня лпроблему да?
источник

G

Gymmasssorla in rust_offtopic
Alex Zhukovsky
ну короч ты поня лпроблему да?
нет
источник

AZ

Alex Zhukovsky in rust_offtopic
ты не можешь заранее знать длину массива которая нужна
источник