Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.95
jerdeks
1 / 1 / 0
Регистрация: 19.04.2009
Сообщений: 13
#1

Что такое ' ' (апострофы) - C++

16.08.2011, 19:52. Просмотров 3424. Ответов 22
Метки нет (Все метки)

Да, я знаю что
C++
1
char c = '1'; // == 48
А вот что такое '1234' и почему нельзя '12345'?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.08.2011, 19:52
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Что такое ' ' (апострофы) (C++):

Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами?
Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с...

Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа?
Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа?

Что такое хэндлер файла? Что такое файловый указатель?
Что такое хэндлер файла? Что такое файловый указатель?

Что такое заголовочный файл? Что такое файл исходного кода? Рассмотрите назначение каждого из них
Что такое заголовочный файл? Что такое файл исходного кода? Рассмотрите ...

Объяснить что такое "раздельная компиляция", что такое "интерфейс класса" и "реализация класса" на примере
Есть класс, содержащий объекты и конструктор. Конструктор объявляется в одном...

Кавычки и апострофы
Кавычки и апострофы в C++ работают как и в пхп? Кавычки- весь внутренний код...

22
ValeryS
Модератор
7134 / 5402 / 669
Регистрация: 14.02.2011
Сообщений: 18,226
17.08.2011, 20:15 #21
Цитата Сообщение от taras atavin Посмотреть сообщение
так как 1 и 2 - два символа, а в апостроф заключается один, значением будет его код (потому '1' и равно 48, а не 1). А двум символам 1 и 2 сразу код не присвоен. Кстати, дефолтная разрядность 1 байт, 1234 туда тоже не влезет.
посмотри на моем скриншоте
если лень могу расписать
int mm='1234'
отладчик показал
mm=0x31323334
что логично
на платформе 0x386(intel)
int равен 4 байтам char одному
для чего это нужно??? например для кодировки
C++
1
2
3
4
5
char buf[]="asdfbcd";
int k='1234';
int * pbuf=(int*)&buf[0];
for(int i=0; i<sizeof(buf);i++)
  pbuf^=k
сразу предупреждаю пример не рабочий(просто идея)
во первых никто не даст писать в статику
во вторых выход за пределы массива
0
grizlik78
Эксперт С++
1983 / 1476 / 191
Регистрация: 29.05.2011
Сообщений: 3,048
17.08.2011, 20:21 #22
Цитата Сообщение от ValeryS Посмотреть сообщение
во первых никто не даст писать в статику
С чего бы?

Цитата Сообщение от ValeryS Посмотреть сообщение
во вторых выход за пределы массива
Ну это да. Хотя первые 2 итерации за границу не выходят. Но вторая уже убивает нуль-терминатор. Впрочем, в случае кодирования/шифрования 0 редко когда может считаться признаком конц строки.
0
ValeryS
Модератор
7134 / 5402 / 669
Регистрация: 14.02.2011
Сообщений: 18,226
17.08.2011, 21:13 #23
Цитата Сообщение от ValeryS Посмотреть сообщение
for(int i=0; i<sizeof(buf);i++)
косячек здесь
по правильному
C++
1
for(int i=0; i<sizeof(buf)/sizeof(int);i++)
0
17.08.2011, 21:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.08.2011, 21:13
Привет! Вот еще темы с решениями:

Апострофы в условии
Доброго времени, вопрос следующий: Как, в условии if сравнивать символы с...

Что такое перегрузка оператора? Что у меня в коде за ошибка?
Что же я написал?? Что оно не компилится? Что значит error C2275: Superclass:...

В этой части кода происходит объявление функций? Что такое void? Что в скобках?
В этой части кода происходит объявление функций? Что такое void? Что в скобках?...

Что такое #, include, что это означает
______


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru