LINUX.ORG.RU

Тупняк и указатели

 


1

1
int n=10;
arr=malloc(sizeof(int)*n); 
for(int i=0;i<n;i++){
*(arr+i)=i;
}

как еще можно более выразительней сделать код? Как будет более эстетичней,что ли, через

while
? Или перефразируем: как будет выглядеть этот код у профессионала?

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 1)
Ответ на: комментарий от nokachi

Да это в древних и примитивных такое встречал давно, сейчас все умеют условные переходы в железе, редко jmp просто так используется.

nickleiten ★★★
()
Ответ на: комментарий от Eddy_Em

То ли тупняк на меня напал, то ли это ночь виновата, но поясни, плз, в чём соль конструкции i[[arr]] вместо arr[i]?

P.s. люблю лоркод. В обоих случаях я поставил двойные скобки. А парсер тупит

Deleted
()
Последнее исправление: ecko (всего исправлений: 1)
Ответ на: комментарий от nokachi

На Hexagon может и аппаратный for получиться.

anonymous
()
Ответ на: комментарий от Deleted

P.s. люблю лоркод. В обоих случаях я поставил двойные скобки. А парсер тупит

Ну и что «любитель лоркода» знает про i в квадратных скобках?

anonymous
()
Ответ на: комментарий от anonymous

Ты таки придраться решил, да? Я ж там написал, что туплю из-за адского недосыпа. Сейчас-то уже понимаю, что для i в квадратных скобках нужно было экранирование, а для arr — нет, поэтому i показало так, как я хотел, а вот с arr не вышло.

Deleted
()
Ответ на: комментарий от anonymous

А ты прав ☺

"Моно" == "одно" в значении "однояйцевый". "Экви" == "одно"/"равно" в значении "эквипотенциальный".

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Deleted

Ты таки придраться решил, да? Я ж там написал, что туплю

Таки отмазаться решил? Из контекста понял, что пеняешь на парсер лоркода. Решил напомнить для профилактики, так и бы и не чесался, ты не в списке моих «любимцев».

А парсер тупит

anonymous
()
Ответ на: комментарий от anonymous

Таки отмазаться решил?

Да. А в чём проблема?

Из контекста понял, что пеняешь на парсер лоркода

Шерлок Холмс гордился бы тобой.

ты не в списке моих «любимцев»

Я пожалуюсь на тебя маме!

Deleted
()
Последнее исправление: ecko (всего исправлений: 1)
Ответ на: комментарий от nerdogeek

Я про общий случай, а не конкретно этот. А вообще, я память выделяю макросом MALLOC, который вызывает calloc и еще кое-какую работу делает.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от comp00

И что? От того, что компилируется в одинаковый машинный код, [] вдруг стал макросом? Загляни в стандарт

Harald ★★★★★
()
        int loc,nonn=n=10;
        if(NULL==(arr=malloc(loc=n*sizeof(int)))){
                sysfatal("Бедному пользователю не досталось %d байт: %r",loc);
        }
        arr+=nonn;
        while(*--arr=--nonn);

Всем чмоки в этом чате;

qulinxao ★★☆
()
Последнее исправление: qulinxao (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.