
Surreal
12.01.2017
12:03:58
Reindex.. please wait

Orphey
12.01.2017
12:04:53
Скажи кому-нибудь то же на улице
Гарантирую - на ногах простоишь не долго

Surreal
12.01.2017
12:05:49
Reindex.. please wait

Google

Andrey
12.01.2017
12:06:27
стоп флуд )
и холивар

Orphey
12.01.2017
12:08:07
Адекватные люди воспринимают критику если их не тыкают носом в стандарт по очереди называя первокурсником и стараясь поднять собственное самомнение до потолка
Да, определённо

Surreal
12.01.2017
12:10:25
Reindex.. please wait
Reindex.. please wait
Reindex.. please wait

Orphey
12.01.2017
12:11:23
Ну ты первым начал
Не находишь?

Surreal
12.01.2017
12:11:38
Reindex.. please wait

Orphey
12.01.2017
12:12:27
Стрелки я и не переводил
Дальше ты сказал всё о чём мы говорили

Google

Orphey
12.01.2017
12:13:03
После того как я назвал тебя дауном, это да

babysitter
12.01.2017
12:14:05
ну по делу, чего уж. заканчивайте

Эдуард
12.01.2017
12:14:15
Столько срача из-за sizeof. Какая коварная функция.

Surreal
12.01.2017
12:16:34
Reindex.. please wait

Bandikoot
12.01.2017
12:16:37

Orphey
12.01.2017
12:17:40
Мне не о чём с тобой говорить

Эдуард
12.01.2017
12:19:21

Bandikoot
12.01.2017
12:20:22

Эдуард
12.01.2017
12:20:24
пример выше можно было бы переписать еще и так:
printf("%lu %lu %lu\n", sizeof(str), sizeof str, sizeof(str[0]));
а что не так то?))

Bandikoot
12.01.2017
12:21:38
как я понимаю, sizeof(str) возвращает не размер указателя как такового
тогда ведь было бы 8 (на x86_64)?
> sizeof(type) — возвращает размер значения указанного типа в байтах

Surreal
12.01.2017
12:22:39

Эдуард
12.01.2017
12:23:00
да, о чем я выше и сказал
sizeof(char) = 1
sizeof(char[6]) = 6
sizeof(char*) = 2/4/8
не помню только, на 8 битных платформах вроде тоже указатель 2 байта, потому что адресовать только 256 байт несколько не то, что хотелось бы)

Bandikoot
12.01.2017
12:25:17
тогда по-другому: верно ли называть переменную типа char [] — указателем?

Google

Surreal
12.01.2017
12:27:20

Эдуард
12.01.2017
12:29:14
занятный вопрос) потому что по факту тип "массив" переведется в указатель, т.е. вполне допустимо делать
char str[6] = "abcde";
char temp = *str; // a
char temp = *(str+1); //b
Но char* (собственно указатель) и char[] - это разные типы. Внутри, если не ошибаюсь, это работает совершенно одинаково, т.е. каких-то кастов из типа в тип нет.

Bandikoot
12.01.2017
12:29:23

Эдуард
12.01.2017
12:30:32
из разницы как раз, например, sizeof, поэтому все же правильнее сказать, что это "почти тоже самое, что и указатель"

Bandikoot
12.01.2017
12:31:14
seems legit

Square
12.01.2017
12:31:59
омг, как не зайду, вы все сайзов мучаете
><

Эдуард
12.01.2017
12:32:58
ага :D

Alex Фэils?︙
12.01.2017
13:06:15
Блядь. что вы тут натворили

Orphey
12.01.2017
13:08:38
Да, я прочёл после)

babysitter
12.01.2017
13:08:50

Alex Фэils?︙
12.01.2017
13:08:58
decay, да
я его калькировал как "превращается", т.к. дословно муть получается

babysitter
12.01.2017
13:10:02
а я типа деградирует в голове перевел

Alex Фэils?︙
12.01.2017
13:10:27
ну по факту char[] и char * в заголовке функции аналогичны

Kirill
12.01.2017
13:11:02
Чего не скажешь о char[20]

babysitter
12.01.2017
13:11:26
в заголовке функции — аналогичны

Google

babysitter
12.01.2017
13:12:01
char (&)[20] надо

Kirill
12.01.2017
13:12:23
Нет, если размер указан, то компилятор обязан проверить, что передается такой же статический массив.
Хотя могу ошибаться.
Но это было бы логично.

babysitter
12.01.2017
13:12:41
ошибаешься и сильно
прочекай, лень пример давать

Bandikoot
12.01.2017
13:13:04
const char[число] проверяет вроде, разве нет?

babysitter
12.01.2017
13:13:47
я могу сделать char str[10] и передать его в вашу функцию принимающую foo(char[20]) и оно скомпилится

Admin
ERROR: S client not available

babysitter
12.01.2017
13:13:52
или вы сомневаетесь
это популярные грабли же

Alex Фэils?︙
12.01.2017
13:14:59
Language: cpp_gcc
Source: void f(char f[100]) { f[0] = '3';}
int main()
{ char f2[30]; f(f2);
}
Stats: Compilation time: 0.12 sec, absolute running time: 0.14 sec, cpu time: 0 sec, memory peak: 3 Mb, absolute service time: 0,26 sec

Kirill
12.01.2017
13:15:08
Да, загуглил, разницы нет. Печаль.

babysitter
12.01.2017
13:16:21
#include <iostream>
void foo(char str[20]) {
std::cout << sizeof(str) << std::endl;
}
int main() {
char str[6];
foo(str);
}
увидишь на экране sizeof(поинтер)
компилиццо на ура

Bandikoot
12.01.2017
13:19:45

Дед Пегас
12.01.2017
13:22:13
Если не спорить со стандартом — язык умрёт.

babysitter
12.01.2017
13:23:10
философия пошла

Никита
12.01.2017
21:25:05

Google

Дед Пегас
12.01.2017
22:50:11

Surreal
12.01.2017
23:42:22

Square
12.01.2017
23:45:01
http://telegra.ph/Software-Developers-Should-Have-Sysadmin-Experience-01-10
У меня прям наболело на этот счёт.

Anatoly
13.01.2017
01:32:37
гг

Oleg
13.01.2017
06:11:56
Зацените какая крутая штукенция из будущего прилетела (о_О)
https://kite.com

Aidar
13.01.2017
06:34:22
Надо глянуть
По описанию какой-то топ

Nurbek
13.01.2017
06:57:38

Aidar
13.01.2017
06:59:22
Там збт какойто

Anatoly
13.01.2017
06:59:55
ждите инвайтов!
(8

Square
13.01.2017
07:25:04

Oleg
13.01.2017
07:25:30
Там же policy есть.

Square
13.01.2017
07:26:16
Вообще неплохо конечно, однако любая иде, особенно с кучей современных плагинов превращает кодинг в тыканье мышем

Oleg
13.01.2017
07:27:48
Конечно дата сет натаскать из GitHub (релевантность юзабельности импортов, методов, тестов etc…) а остальное обучать персонально в локальном окружении.

Andrei
13.01.2017
07:29:43
Всё это не имеетотношения к плюсам.

Evgeniy
13.01.2017
07:31:29

Square
13.01.2017
07:32:33