|
68 / 4 / 1
Регистрация: 11.10.2012
Сообщений: 89
|
|
В чем отличие char* s от char *s14.07.2016, 09:34. Показов 3825. Ответов 32
Метки нет (Все метки)
0
|
|
| 14.07.2016, 09:34 | |
|
Ответы с готовыми решениями:
32
В чем отличие двумерного массива типа char от массива указателей на char?
В чем разница между char* и char ** |
|
68 / 4 / 1
Регистрация: 11.10.2012
Сообщений: 89
|
|
| 14.07.2016, 13:59 [ТС] | |
|
Переменная это адрес. Ссылка на переменную это ссылка на адрес то есть адрес адреса. Указатель на переменную это указатель на адрес, то есть адрес адреса. Всё адрес адреса.
0
|
|
|
Неэпический
|
||
| 14.07.2016, 14:08 | ||
|
Останется ли адрес? А считать ли такую переменную переменной? ![]() А константные переменные, это переменные? А если переменной нет, а адрес есть? А функция? У нее же есть какой-то адрес? А ведь она не переменная? ![]() А у Кощея было... эммм, что-то я не туда...
0
|
||
|
68 / 4 / 1
Регистрация: 11.10.2012
Сообщений: 89
|
|||||
| 14.07.2016, 14:11 [ТС] | |||||
Да, я писал, что переменная это адрес, но не писал, что адрес это переменная. Адрес это всё что угодно - аптека, баня, ...
0
|
|||||
|
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
|
| 14.07.2016, 22:01 | |
|
0
|
|
|
4 / 4 / 1
Регистрация: 20.01.2016
Сообщений: 24
|
|
| 14.07.2016, 23:02 | |
|
zss, твой ник случайно вставил, извиняюсь
![]() laby, нет никакого "адрес адреса". Представь что ты тыкаешь на кого-то пальцем, ты на него указываешь, а указываешь на человека, сущность. Я же не пишу что Ты "тыкальщик тыкальщика", Ты же понимаешь как это вообще глупо звучит? Вот то же самое про "адрес адреса". Адрес всегда один, не может быть адрес внутри адреса в программировании (если бы было такое возможно, то понятие "адрес адреса" было бы приемлемо). Указатель - не адрес вообще, а указатель на адрес. Ссылка - адрес переменной, но не адрес адреса, и работать с ссылкой можно как с обычной переменной в С и С++. Переменная - это сущность, значение, объект, что угодно, но не адрес. Хватит выделываться. Ты создал тему и спросил у знатоков, вот послушай знатоков, а то почти получается ты нас учишь, а не мы тебя. Если не можешь послушать нас - погугли, и попробуй ещё миру доказать что есть понятие "адрес адреса". Если хотя бы подумаешь об этом (чтобы попробовать доказать миру) - скажи мне, я убью свою собаку. Пожалей хоть её. Ты либо тролишь всех, либо пойди в компанию, фирму, контору (куда угодно где программируют) и скажи что ты умеешь работать с "адресом адреса" в С, С++, Тебе там все вместе расскажут что такое "адрес адреса", после вынесут, потому что Сам уже будешь не в состоянии уйти. Тебе не отвечали на твой вопрос по-дебильному: "а зачем тебе это?", - Тебе ответили чётко на твой вопрос. Я даже не уверен что снова кто-то ответит, нет смысла повторять одно и то же более 3х раз, принимай остальное как пожелаешь, твоё дело и проблемы твои. Если Твоя цель, как я понял, уметь в С, С++ - не выпендривайся, а делай что требуется. А требуется от Тебя сперва забыть про "адрес адреса" и перечитать что я написал в этом сообщении и остальные до этого сообщения ещё раз (если верующий - не читай свои сообщения в этой теме, ибо нагрешишь, а если не верующий, тоже не читай свои сообщения).
0
|
|
|
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
|
| 15.07.2016, 00:22 | |
|
0
|
|
|
4 / 4 / 1
Регистрация: 20.01.2016
Сообщений: 24
|
|
| 15.07.2016, 07:44 | |
|
avgoor, указатель - адрес, ссылающийся на область памяти, а ссылка - обычный тип данных, безопаснее указателей
0
|
|
|
68 / 4 / 1
Регистрация: 11.10.2012
Сообщений: 89
|
|
| 15.07.2016, 08:17 [ТС] | |
|
На область памяти - то есть на адрес этой области (значение переменной).
Переменная типа ссылка тоже указывает на область памяти. Может быть так: Переменная типа указатель - адрес адреса значения переменной Переменная типа ссылка - адрес значения переменной также как и сама переменная ? Я говорю упрощенно, просто пытаюсь понять для себя как понимать эти * и &
0
|
|
|
4 / 4 / 1
Регистрация: 20.01.2016
Сообщений: 24
|
||||||
| 15.07.2016, 09:11 | ||||||
|
laby, переменная типа ссылка (&) не указывает память, она работает с ней. Это такая же обычная переменная, которая работает с той же памятью переменной, которую ты присваиваешь ссылке. Ссылка не является адресом, она себе присвоила адрес на эпапе инициализации и является переменной ссылочного типа.
Указатель (*) - адрес в памяти, с которой он может работать.
Переменная типа ссылка - синоним другой переменной (как ссылочного так и обычного типа), не более того. Это безопаснее чем работа с адресом, но менее гибкий способ. Есть память, у памяти есть ячейки, каждая ячейка имеет адрес.
0
|
||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||
| 15.07.2016, 13:42 | |||
|
но потом вы пишите: они - лишь псевдонимы, альтернативные имена объектов. нельзя взять адрес того, чего на самом деле не существует. взятие адреса у ссылки - это взятие адреса объекта, синонимом которого она является, а не самой ссылки.
0
|
|||
|
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
|
||||||
| 15.07.2016, 17:31 | ||||||
|
laby, лучше думать таким образом:
У нас есть оперативная память в компьютере, каждая ячейка которой пронумерована. Когда создается переменная, скажем int x;, то под нее выделяются какие-то 4 байта в оперативной памяти. Тогда &x - получение адреса переменной x, т.е. фактически номера первой выделенной ячейки. Адрес ячейки - это какое-то число, что бы с ним что-то делать, его нужно куда-то записать. Для этого есть указатели, это обычная переменная (такая же как и "x", но у нее немного другой тип), в которой записано число - номер какой-то ячейки. Т.к. указатель - это такой же объект в памяти, то у него также есть какой-то адрес в памяти и для него также можно завести указатель:
Чтобы различать использование * и &, нужно понимать немного синтаксис языка, а конкретнее различать когда переменная обяъвляется (там * и & значат объявление указателя либо ссылки) и когда идет обычное выражение (где * может быть операцией разименования, либо умножением, а & - взятие адреса, либо побитовый И).
0
|
||||||
|
7 / 7 / 7
Регистрация: 20.06.2016
Сообщений: 72
|
||||||
| 15.07.2016, 21:16 | ||||||
|
Компилятору абсолютно все равно. Все варианты компилятор примет. Можно писать любым вариантом, лично я склоняюсь ко второму, т. к. char* это фактически тип переменной, и просто надо запомнить, что если переменных несколько, звездочки ставятся перед каждым именем.
0
|
||||||
| 15.07.2016, 22:11 | |
|
0
|
|
| 15.07.2016, 22:11 | |
|
Чем отличается const char* от char*? В чем разница между char* и char[]?
Отличие char от string Ошибка: "char *concat(char *,.)": невозможно преобразовать аргумент 1 из "const char [4]" в "char *" Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
|
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал.
Оно само - говорит.
Кто слышит тот слышит.
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|