Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Одинарные кавычки, Зачем они нужны? 
V
    Опции темы
hoz
Дата 23.2.2014, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 27.6.2013

Репутация: нет
Всего: нет



 Раньше я как-то не задумывался о применении и использовании одинарных кавычек в виду не надобности для меня их. Но вот сейчас читаю книги и частяком в коде, которым насыщена книга эти самые одинарные кавычки используются очень активно. По сему, решил понять, зачем они, нас самом деле нужны.
Прогортал несколько книг, но ничего путного про эти самые кавычки не прочёл. Где про них можно прочитать?
PM MAIL   Вверх
vinter
Дата 23.2.2014, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



одинарные кавычки нужны для одного символа, двойные для строки.


--------------------
Мой блог
PM MAIL WWW   Вверх
hoz
Дата 23.2.2014, 13:51 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 27.6.2013

Репутация: нет
Всего: нет



 А как тогда правильно интерпретировать такую ситуацию?
Код

cout << x << ' ';

Ведь здесь вообще символов то нет..
PM MAIL   Вверх
Фантом
Дата 23.2.2014, 13:57 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 4
Всего: 49



Цитата(hoz @  23.2.2014,  14:51 Найти цитируемый пост)

Ведь здесь вообще символов то нет.. 


А пробел между кавычками уже не символ?
PM   Вверх
hoz
Дата 23.2.2014, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 27.6.2013

Репутация: нет
Всего: нет



Цитата(Фантом @  23.2.2014,  13:57 Найти цитируемый пост)
А пробел между кавычками уже не символ?

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

" "

Но одинарными кавычками в плане скорости работы кода будет шустрее немного, верно? Т.к. одиночные кавычки сами по себе подразумевают не строку и символ.. Я правильно думаю?
PM MAIL   Вверх
Фантом
Дата 23.2.2014, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: 4
Всего: 49



Цитата(hoz @  23.2.2014,  15:15 Найти цитируемый пост)
Но одинарными кавычками в плане скорости работы кода будет шустрее немного, верно?


Скорость работы при использовании iostream немного неактуальна.  smile 

Цитата(hoz @  23.2.2014,  15:15 Найти цитируемый пост)
Т.к. одиночные кавычки сами по себе подразумевают не строку и символ.. Я правильно думаю? 

Одиночные кавычки подразумевают символ внутри.
PM   Вверх
vinter
Дата 23.2.2014, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



" " это два символа: ' ' и '\0'


--------------------
Мой блог
PM MAIL WWW   Вверх
hoz
Дата 23.2.2014, 17:23 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 27.6.2013

Репутация: нет
Всего: нет



Цитата(vinter @  23.2.2014,  15:19 Найти цитируемый пост)
" " это два символа: ' ' и '\0'

Что Вы имеете в виду под '\0' ? Такой управляющей последовательности вроде как нет.
PM MAIL   Вверх
vinter
Дата 23.2.2014, 18:32 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



Цитата(hoz @  23.2.2014,  18:23 Найти цитируемый пост)
Что Вы имеете в виду под '\0' ? Такой управляющей последовательности вроде как нет.

нуль символ



--------------------
Мой блог
PM MAIL WWW   Вверх
Starikan
Дата 23.2.2014, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 25.10.2007

Репутация: 1
Всего: -15



Цитата(vinter @ 23.2.2014,  18:32)
Цитата(hoz @  23.2.2014,  18:23 Найти цитируемый пост)
Что Вы имеете в виду под '\0' ? Такой управляющей последовательности вроде как нет.

нуль символ

ну не совсем.
PM MAIL   Вверх
bsa
Дата 23.2.2014, 21:02 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(Starikan @  23.2.2014,  20:36 Найти цитируемый пост)
ну не совсем. 
Ну называть символ с кодом 0 можно как угодно. В частности, используется и такое название (буквальная транслитерация null-symbol).

PM   Вверх
hoz
Дата 23.2.2014, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 27.6.2013

Репутация: нет
Всего: нет



В итоге, взял накидал примитивнейший код:
Код

int main()
{
   cout << "Вот оно число";
   cout << ' ';
   cout << "15";
   cout << '\0';
   cout << "15";
}     

При компиляции результат такой:
Код

Вот оно число 15 15

Потом тот же код с двойными кавычками:
Код

int main()
{
   cout << "Вот оно число";
   cout << " ";
   cout << "15";
   cout << "\0";
   cout << "15";
}    

Результат такой:
Код

Вот оно число 1515

Получается, что пустой символ "пробелом" можно ставить и с двойными кавычками, а вот через \0 не катит, что весьма даже интересно.
 Это ж не последовательность?(Имею ввиду нуль-символ)
PM MAIL   Вверх
Gluttton
Дата 23.2.2014, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Начинающий
***


Профиль
Группа: Завсегдатай
Сообщений: 1170
Регистрация: 28.8.2008
Где: Феодосия

Репутация: нет
Всего: 54



Цитата(hoz @  23.2.2014,  22:09 Найти цитируемый пост)
При компиляции результат такой:

Не знаю. У меня:
Цитата

gcc --version
gcc (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1

в обоих случаях результат одинаковый:
Цитата

Вот оно число 1515



--------------------
Слава Україні!
PM MAIL   Вверх
Starikan
Дата 23.2.2014, 22:59 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 25.10.2007

Репутация: 1
Всего: -15



Цитата(bsa @  23.2.2014,  21:02 Найти цитируемый пост)
Ну называть символ с кодом 0 можно как угодно. В частности, используется и такое название (буквальная транслитерация null-symbol).

няяя
PM MAIL   Вверх
hoz
Дата 24.2.2014, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 27.6.2013

Репутация: нет
Всего: нет



Цитата(Gluttton @  23.2.2014,  22:49 Найти цитируемый пост)
в обоих случаях результат одинаковый:

Я этим онлайн компилятором компилил
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0546 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.