Форум программистов, компьютерный форум CyberForum.ru

Не работает strcmp + указатели непойми что опять выводят - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как программно незаметно создать zip/rar архив и отправить на хост? http://www.cyberforum.ru/cpp-beginners/thread649847.html
C++(лучше C++/CLI). Например: моя программа на компьютере с именем пользователя "User01". Она берет файли из нужных мне папок и пакует в архив с именем "User01-10-09-2012.rar/.zip" и шлется на какой-нибудь хост или мыло
C++ не работают все коды при компилировании любого кода в консоли появляется сообщение""адрес файла" не является внутренней или внешней программой или пакетным кодом. для продолжения нажмите любую кнопку... http://www.cyberforum.ru/cpp-beginners/thread649832.html
Как реализовать небуферизированный ввод в программе? C++
Необходим ввод по одному символу (т.е. как в getchar()), но без необходимости ввода специального символа для завершения. Т.е. что-то подобное тому, что есть в играх (мозг развалился от обилия междометий и вводных слов). Подскажите, чем можете)
C++ Freetype + кирилица
при использовании фритайпа не выводится кирилица(точнее выводится, только в виде квадратика). Задаю номер буквы в шрифте, но не помогает. Англ буквы выводит на ура, только как-то с дырками среди слова. Использую в связке с OpenGL.
C++ Программа, вычисляющая среднее арифметическое введённой с клавиатуры последовательности чисел http://www.cyberforum.ru/cpp-beginners/thread649771.html
Написати програму, яка обчислює середнє арифметичне введеної з клавіатури послідовності чисел. Після вводу останнього числа програма повинна вивести мінімальне та максимальне число послідовності. Кількість чисел послідовності повинно задавати під час роботи програми. Толька с объяснением Написать программу, которая вычисляет среднее арифметическое введённой с клавиатуры последовательности...
C++ Конвертер из форматов Blender(.obj) Здравствуйте! У кого нибудь есть какая-нибудь информация как сделать конвертер? подробнее

Показать сообщение отдельно
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,911
11.09.2012, 00:20     Не работает strcmp + указатели непойми что опять выводят
Цитата Сообщение от AnreyKazakov Посмотреть сообщение
std::cout<<&line1<<std::endl;
++line1;/*так как идет приращение я думал, что адрес памяти
в строчке сверху будет меняться, а он какой-то константный....*/
Операция инкремента применительно к указателю не меняет его собственный адрес, а заставляет его указывать на следующую ячейку памяти. Адрес текущего символа на который указывает указатель можно вывести так
C++
1
std::cout << static_cast<const void*>(line1) << std::endl;
Цитата Сообщение от AnreyKazakov Посмотреть сообщение
int i=strcmp(line1,line2);/*независимо от значений массивов line1
line 2 значение i равно 0 , что вообще не вписывается в мое понимание этого мира....как так?*/
После того как вы прогнали эти два цикла
C++
1
2
while(*line1!='\0') ...
while(*line2!='\0') ...
оба указателя стали указывать на конец своих строк, т.е. на символ '\0', следовательно функция strcmp расценивает строки как равные и возвращает 0.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru