Синтаксис c++

okunek


int *arr[100]


это есть указатель на массив или массив указателей.
Если последнее, то как сделать первое?

otvertka07

2-e
int *

okunek

блин, так и думал. а как сделать указатель на массив? книжки просто под рукой нет, вот и спрашиваю тут.

otvertka07

используй указатель на 1-й элемент, я ж написал

natali20

int (*parr)[100];
но зачем?

otvertka07

разве это работает? и зачем там вообще [100] , память то все равно в таком случае не выделяется

avinir60

Объявляешь переменную int **a;
Потом пишешь что-то типа a = &b[0], где b - твой массив.
Вот и все.
Фигню сморозил. Надо a=&b; Вот так.

natali20

Да, работает.
>и зачем там вообще [100] , память то все равно в таком случае не выделяется
определяет тип указателя
int (*)[100] и int (*)[200] - это разные типы

Dasar

указатель на массив:


int (*arr)[100] ;


но лучше (понятнее) так:


typedef int Array[100];
Array * p;

okunek

бля, стопудово, до меня дошло, ведь достаточно написать

int *a


и "а" использовать как массив и не надо никаких границ.
Все, всем спасибо

krishtaf

тогда это будет не С++ а голый С.

tokuchu

Да это и так был голый C

krishtaf


не совсем,
но в последнем случае - это полный С-шный пиздец.

tokuchu

> не совсем
И где там это "не совсем"? Всё, про что говорили - это есть в C.
> но в последнем случае - это полный С-шный пиздец
Я бы так обозвал скорее 1-й случай, т.к. это изврат полный.

Filan

А что мешает сделать так: int arr[100] ?
arr и будет int * (вернее const int *).

Aleksei66

пиздец это выражения типа - 10?(a?) = 1?(b?) +++ 3?(c?); За это я и люблю С++.

okunek

моим способом писать меньше на целых 4 символа.

Filan

У тебя память не выделяется.

okunek

дык дело в том, что память, что я юзаю уже была выделена до меня библиотечкой, так что мне побарабану

Ivan8209

Что? Вспоминаешь АПЛьные корни Си?
---
! C - 4[ever]

Ivan8209

Советую ознакомиться с http://ioccc.org
---
"Vyroba umelych lidi, slecno, je tovarni tajemstvi."
Karel Capek

Filan

Так задачу надо сразу формулировать правильно.

okunek

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

Aleksei66

Просто прикольно. Можно поглумиться над кем-нибудь. А ведь еще есть <: и :>.
Оставить комментарий
Имя или ник:
Комментарий: