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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> присвоение значения переменной 
:(
    Опции темы
loopz
Дата 8.10.2012, 14:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



вопрос мой вытекает из предыдущей темы....собственно вот небольшой код для преобразования прописных символов в строчные
Код

#include "stdafx.h"
#include<iostream>
#include<cctype>
using namespace std;
int main(){
    cout<<"Vvedite frazu ili vybereti @ dlya vyhoda"<<endl;
    char temp[100];
    int i;
    char d;
    for(i=0;i<100;i++){
        cin.get(temp[i]);
        char p;
        p=temp[i];
        if (p=='@')
            break;
        putchar(toupper(p));
    }
    cout<<temp;
    return 0;
}
 
все работает как и задумывалось но глянув на код у меня возник вопрос вот по этому 
Код

p=temp[i];
        if (p=='@')
            break;
        putchar(toupper(p));
    }
    cout<<temp;

по коду ясно что переменной P присваивается значение temp[i] и в последствии это значение модернизируется в значение в верхнем регистре но вот вопрос почему я отправляю в поток вывода cout<<temp; и выводит именно измененный вариант ....хотя по логике он должен был остаться в переменно p
PM MAIL   Вверх
borisbn
Дата 8.10.2012, 16:24 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

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



Цитата(loopz @  8.10.2012,  14:58 Найти цитируемый пост)
cout<<temp; и выводит именно измененный вариант

не верю (С). ты до cout << temp; выводишь 
Цитата(loopz @  8.10.2012,  14:58 Найти цитируемый пост)
 putchar(toupper(p));

для каждого символа. вот это ты и видишь.



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
math64
Дата 8.10.2012, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Ты смешиваешь stdio и iostream. Так делать нельзя. Попробуй делать ввод-вывод одной библиотекой
PM   Вверх
loopz
Дата 9.10.2012, 10:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



да произошла ошибка я взял эту строку прям из примера по обработке символов думал он нужен 
Код

 putchar(toupper(p));

а оказывается это эквивалентно cout ....спс за объяснение ....но тогда вопрос а как обработать символ но не выводя его то есть без cout или Puts то есть чтобы он остался внутри программы ...но уже в строчном виде
строка типа

 
Код

char toupper(p) ;


ожидаемого эффекта не дает 

Это сообщение отредактировал(а) loopz - 9.10.2012, 10:27
PM MAIL   Вверх
borisbn
Дата 9.10.2012, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

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



Код
temp[ i ] = toupper( p );




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

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

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

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

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


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

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


 




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


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

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