LINUX.ORG.RU

Ответ на: комментарий от ioexception

и давно ты трогаешь пальцами чужие ***?

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

Ну нет же, малыш, ты всего навсего частопостящая серость. Скоро тебя забанят и забудут.

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

Видимо int * i. Это не совсем переменная типа указатель на int, И указатели в плюсах наравне с переменными, отдельная сущьность. Поэтому первый или второй вариант.

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

Поэтому первый или второй вариант.

Это же классика! Тебя разводят, а ты и не видишь. Какого типа y и y1:

int* x, y;
int * x1, y1;

ziemin ★★
()
Ответ на: комментарий от i-rinat

int main(argc) int argc ;{ ;puts(«Hello, » «world! ») ;return 0 ;}

Великолепный разрыв шаблона! Возьму на вооружение. :-)

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

писать надо либо как удобно

а еще мне говорят что я плохо знаю плюсы... Из всех вариантов правильны только первый и второй, третий даст неверные результаты при объявлении нескольких переменных после типа. Аналитики лора такие аналитики...

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

Все три варианта дадут одинаковый результат.

третий даст неверные результаты при объявлении нескольких переменных после типа

Он даст неожиданный и нелогичный результат. Решение — не объявлять больше одной переменной в строке.

а еще мне говорят что я плохо знаю плюсы

Ты не представляешь, насколько мало ты знаешь о плюсах.

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

Решение — не объявлять больше одной переменной в строке.

Логичнее просто не использовать этот вариант, а только 1-2.

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

Решение — не объявлять больше одной переменной в строке.

Логичнее просто не использовать этот вариант,

потом поймёшь, когда начнёшь ЧИТАТЬ код.

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

int *a, *b, *c, d, *e, *f;

Ахах, ну это сразу выдаст в вас дилетанта :)

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

Аргументируй. А лучше почитай стандарт C++. Всё, что не описано в стандарте - делается на усмотрение автора или стандартов кодинга фирмы.

Если у фирмы есть устоявшийся стандарт - ты подчиняешься правилам и пишешь, как решил тимлид.

Если нет требований к оформлению кода - пишешь, как нравится твоей левой пятке, потому что заданный тобой вопрос - это чистая косметика, которая никак не влияет на код.

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

Он даст неожиданный и нелогичный результат. Решение — не объявлять больше одной переменной в строке.

И где логика? Ты заявляешь (через int), что переменные будут целыми. Типа int* не существует. Так я спрашиваю: ты свою логику сдал в химчистку или да?

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

И где логика?

Я о чем и пишу, её нет:

int* a, b, c

На первый взгляд кажется что это три указателя. Поэтому если уж писать по три указателя на строку, то звездочку писать у переменной.

backburner
()
Ответ на: комментарий от ioexception
#include <iostream>
#include <typeinfo>

int main() {
    int *a;
    int* b;
    int * c;
    int*d;

    std::cout << typeid(a).name() << std::endl
              << typeid(b).name() << std::endl
              << typeid(c).name() << std::endl
              << typeid(d).name() << std::endl;

    return 0;
}

// Pi
// Pi
// Pi
// Pi

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

Да ни на какой взгляд не кажется. Нет такого типа int*. Есть приведение к типу. И, как и (type*), они применяются только к конкретным переменным или указателям соответственно.

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

все это безразлично.

Так же, как ему безразличен сам алгоритм, только алгоритм может выполнять что нужно либо не выполнять если программист записал не так как было нужно.

ioexception
() автор топика

Про объявление нескольких указателей сразу уже сказали, я добавлю вот это

int i = 0;

const int *a = &i; // вот так я сам привык писать
int const *b = &i;

int * const c = &i;

const int * const d = &i;
int const * const e = &i;
Правда про это тоже уже упомянули.

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

Видимо я основоположенник нового направления в троллинге.

Нет, таких как ты до тебя было настолько много что уже считать все перестали.

itn ★★★
()

Читайте стандарт языка. И только.

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

Лор для этого и сделан, не выдумывайте на ровном месте.

ioexception
() автор топика

Правильней писать

std::add_pointer_t<int> i;
Begemoth ★★★★★
()

самозабанься уже

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

Указатель на char. Я понял, чего ты не понимаешь! Попробуй сформулировать в терминах C/C++ тип-указатель.

//Сразу же подсказка - это ссылка, но её применение ограничено.

В терминах это значит...

ziemin ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.