Как присвоить переменной текстовое значение c
Операции присваивания позволяют присвоить некоторое значения. Эти операции выполняются над двумя операндами, причем левый операнд может представлять только модифицируемое именованное выражение, например, переменную.
Базовая операция присваивания = позволяет присвоить значение правого операнда левому операнду:
int x <>; x = 2;
То есть в данном случае переменная x (левый операнд) будет иметь значение 2 (правый операнд).
Стоит отметить, что тип значения правого операнда не всегда может совпадать с типом левого операнда. В этом случае компилятор пытается преобразовать значение правого операнда к типу левого операнда.
При этом операции присваивания имеют правосторонний порядок, то есть выполняются справа налево. И, таким образом, можно выполнять множественное присваивание:
int a <>, b<>, c<>; a = b = c = 34;
Здесь сначала вычисляется значение выражения c = 34 . Значение правого операнда — 34 присваивается левому операнду с. Далее вычисляется выражение b = c : значение правого операнда c (34) присваивается левому операнду b . И в конце вычисляется выражение a = b : значение правого операнда b (34) присваивается левому операнду a .
Кроме того, следует отметить, что операции присваивания имеют наименьший приоритет по сравнению с другими типами операций, поэтому выполняются в последнюю очередь:
int x <>; x = 3 + 5;
В соответствии с приоритетом операций вначале выполняется выражение 3 + 5 , и только потом его значение присваивается переменной x.
Все остальные операции присваивания являются сочетанием простой операции присваивания с другими операциями и имеют общую форму op= :
- += : присваивание после сложения. Присваивает левому операнду сумму левого и правого операндов: A += B эквивалентно A = A + B
- -= : присваивание после вычитания. Присваивает левому операнду разность левого и правого операндов: A -= B эквивалентно A = A — B
- *= : присваивание после умножения. Присваивает левому операнду произведение левого и правого операндов: A *= B эквивалентно A = A * B
- /= : присваивание после деления. Присваивает левому операнду частное левого и правого операндов: A /= B эквивалентно A = A / B
- %= : присваивание после деления по модулю. Присваивает левому операнду остаток от целочисленного деления левого операнда на правый: A %= B эквивалентно A = A % B
- >>= : присваивание после сдвига разрядов вправо. Присваивает левому операнду результат сдвига его битового представления вправо на определенное количество разрядов, равное значению правого операнда: A >>= B эквивалентно A = A >> B
- &= : присваивание после поразрядной конъюнкции. Присваивает левому операнду результат поразрядной конъюнкции его битового представления с битовым представлением правого операнда: A &= B эквивалентно A = A & B
- |= : присваивание после поразрядной дизъюнкции. Присваивает левому операнду результат поразрядной дизъюнкции его битового представления с битовым представлением правого операнда: A |= B эквивалентно A = A | B
- ^= : присваивание после операции исключающего ИЛИ. Присваивает левому операнду результат операции исключающего ИЛИ его битового представления с битовым представлением правого операнда: A ^= B эквивалентно A = A ^ B
#include int main() < int a ; a += 10; // 15 a -= 3; // 12 a *= 2; // 24 a /= 6; // 4 a >= 2; // 16 std::cout
Переменная
Для присвоения значения служит оператор присваивания, которым является знак равно (=).
| Оператор — это слово или знак, выполняющий одно предписание (одну операцию). |
Слева от знака «равно» указывается имя переменной, в которую будет помещено значение, а справа — значение переменной (числовое или текстовое), либо математическое или строковое выражение или другая переменная, из которой берется значение. То есть общий вид оператора присваивания:
-
Куда (переменная) = что или откуда
В математических выражениях используются знаки арифметических операций:
| ^ | возведение в степень |
| * | умножение |
| / | деление |
| + | сложение |
| — | вычитание |
Арифметические операции выполняются в такой последовательности: сначала возведение в степень, затем умножение и деление, в последнюю очередь — сложение и вычитание. Если в выражении несколько операций, то они выполняются слева на право.
Для изменения порядка операций используются только круглые скобки ( ).
Математическое выражение сначала обрабатывается и вычисляется результат, который затем присваивается переменной (помещается в переменную).
Пи написании чисел в коде программы целая и дробная часть числа отделяются точкой.
Например:
1. Переменной присваивается конкретное значение:
a = 5
b = «Мир»
2. Переменной присваивается результат выражения:
a = 2 * 3 + 10/2
b = «Миру» + «» + «Мир!»
3. Переменной присваивается значение выражения, в котором используются другие переменные:
a = (i + 5) * 2.5
b = c + d + «май»
c = b
Примечание: С помощью оператора присваивания можно увеличить (уменьшить) значение переменной, например:
x = x + 1
При выполнении такой строки сначала вычисляется правая часть и результат присваивается переменной, стоящей слева от знака равно. Например, если x до выполнения строки равно 5, то после выполнения этой строки будет равна 6.
Аналогично присваиваются значения свойствам. Это записывается так:
Объект.Свойство = Значение
Например:
Command1.Caption = «Вася»
Эта строка изменяет надпись на кнопке с именем Command1 на Вася .
Ввод-вывод, оператор присваивания, арифметические операции
В этом сообщении указывается имя файла и номер строки, в которой обнаружена ошибка ( test.cpp:5 ), а также описание ошибки ( `c’ undeclared — объект с именем c не объявлен).
Объявление переменной имеет следующий вид:
Например, переменные n и m типа int можно объявить такой строкой:
int n, m;
Переменную x типа double можно объявить такой строкой:
double x;
Значения переменных сразу после объявления не определены и являются произвольными. Предположение о том, что все переменные первоначально имеют нулевые значения, является ошибочным.
Идентификатор переменной — это ее имя, которое должно быть последовательностью букв латинского алфавита, символа подчеркивания и цифр, начинающейся с буквы. Примеры правильных идентификаторов: а , i , Year , school179 . Имена переменных чувствительны к регистру букв, то есть Number , number , NUMBER и nUMbeR — это четыре разных переменных.
Типы данных
При объявлении переменной мы должны указать ее тип. Существует несколько стандартных типов, кроме того, программист может создавать собственные типы данных. Для представления целых чисел существуют следующие стандартные типы:
В языках С, C++ есть следующие стандартные типы данных для представления целых чисел.
| Тип | Описание | Размер | Диапазон | Синоним |
| int | Целые числа | 4 байта | -2 31 ..2 31 -1 | |
| unsigned int | Беззнаковые целые | 4 байта | 0..2 32 -1 | unsigned |
| long int | Длинные целые | 4 байта | -2 31 ..2 31 -1 | long |
| unsigned long | Беззнаковые длинные | 4 байта | 0..2 32 -1 | |
| short int | Короткие целые | 2 байта | -2 15 ..2 15 -1 | short |
| unsigned short | Беззнаковые короткие | 2 байта | 0..2 16 -1 |
При этом в стандарте языка C++ не оговаривается конкретный размер каждого из вышеперечисленных типов, для каждого компилятора они могут быть своими. Приведенные выше числа верны для компиляторов GCC, MS VC++ , а вот для Borland C++ версии 3.1 размер переменной типа int — 2 байта.
Действительные числа можно записывать в виде десятичных дробей как с фиксированной точкой (например, 3.1415926, 100.001, -10000000.0), так и с плавающей точкой. В последнем случае число имеет вид e
, где — дробное число (положительное или отрицательное), называемое , а
— целое число (положительное или отрицательное), называемое . Число, записанное таким образом, равно f×10 p . Фактически, порядок означает, на какое число позиций нужно сдвинуть вправо десятичную точку в записи числа . Если же порядок меньше нуля, то сдвиг десятичной точки осуществляется влево. Примеры записи чисел с плавающей точкой: 3.14e1 означает 31.4
3.14e5 означает 314000
3.14e-3 означает 0.00314
-1e6 означает -1000000
-1e-6 означает -0.000001
Для представления действительных чисел существует два стандартных типа:
| Имя типа | Размер |
| float | 4 байта |
| double | 8 байт |
Как правило, для хранения целых чисел следует использовать тип int , а для действительных чисел — double .
Арифметические операторы
Арифметическая инструкция — это некоторое выражение, состоящее из констант, идентификаторов переменных и арифметических операторов, которая завершается точкой с запятой. Самый главный арифметический оператор — это оператор присваивания ‘ = ’, который присваивает одной переменной, идентификатор которой указывается слева от оператора ‘ = ’ значение некоторого выражения, которое стоит справа. Например:
a=2;
b=a+1;
В последней строке встретился оператор сложения ‘ + ’. Кроме оператора сложения, есть еще операторы вычитания ‘ — ’, умножения ‘ * ’, деления ‘ / ’ и взятия остатка от деления целых чисел ‘ % ’.
Особого внимания заслуживает оператор деления. Если оба его аргумента имеют целочисленный тип (то есть один из типов, перечисленных в первой таблице или целочисленные константы), то этот оператор рассматривается, как оператор деления целых чисел с остатком. Если же хотя бы один из операторов будет иметь дробный тип, то оператор деления выполняется, как оператор деления десятичных дробей.
В арифметическом выражении сначала выполняются слева направо все операторы умножения и деления, затем слева направо все операторы сложения и вычитания, затем справа налево все операторы присваивания. При необходимости порядок действий можно изменить при помощи скобок.
Ввод-вывод
Текстовые строки при выводе на экран необходимо заключать в двойные кавычки. Если хочется вывести на экран несколько объектов (переменных, текстовых строк и т.д.), то их нужно разделять между собой оператором ‘
Для того, чтобы считать значение переменной нужно использовать объект ‘ cin ’ и оператор ‘ >> ’, который надо называть . При этом считывание данных будет производиться со стандартного ввода программы, как правило, являющегося клавиатурой. Если хочется за одну операцию считать несколько переменных, то их идентификаторы нужно разделять между собой оператором ‘ >> ’.
Более сложный пример
Обобщим все изложенное выше в более сложной программе, которая находит сумму двух введенных чисел.
Как переменной (x) присвоить текст/слово и т.д
Мне нужно, что бы переменная Х была равно моему тексте.
И при выводе, когда я вставлю Х что бы он вывел текст который я ввел..
P.S. x=текст как это сделать?
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Как присвоить переменной текст из файла?
Нужно чтобы программа брала строку из файла и проверяла является ли строка перевертышем. Не могу.
Как текст из заданного файла присвоить переменной типа std::string?
Здравствуйте, у меня есть файл с текстом, нужно этот текст присвоить переменной string, как это.

Как к переменной присвоить текст, с пробелами и символами, например ‘-‘
Здравствуйте, очень долго бьюсь над этой проблемой. Нужно сделать так, чтобы когда человек вводил.
Как присвоить текст переменной?
Как присвоить текст переменной? Числовые значения присваиваются через int, а как присвоить текст?
Заблокирован
string x = "My text";
5496 / 4891 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
Сообщение от Skampf 
И при выводе, когда я вставлю Х что бы он вывел текст который я ввел..
1 2 3 4 5 6 7 8 9 10 11 12
#include #include using namespace std; int main() { string X; getline(cin, X); cout X endl; cin.get(); }
Заблокирован
Сообщение от IrineK 
Код C++
1
string x = «My text»;
Пробовал. Но пишет стринг не определен.
Прочитал, что нужно в функцию, что то дописать. А что? Если она такая int _tmain(int argc, _TCHAR* argv[])
Заблокирован
Сообщение от Skampf 
Но пишет стринг не определен.
#include
5496 / 4891 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
Сообщение от Skampf 
А что? Если она такая int _tmain(int argc, _TCHAR* argv[])
Такая, не такая, смотри 3 пост. Чего не хватает?
4816 / 2276 / 287
Регистрация: 01.03.2013
Сообщений: 5,943
Записей в блоге: 27
И правильно пишет, зачем вам плюсовые стринги, когда простые сишные строки тоже можно простым присваиванием задавать и копировать (готов поспорить с возможными оппонентами данного тезиса ).
Заблокирован
Сообщение от IrineK 
Теперь не каких ошибок.
Но выводиться смайлик
Помогите еще пожалуйста
Если выводить через printf какое должно быть значение ( %D-%f и т.д)??
5496 / 4891 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
Может в форуме по Си поспорить?
Сообщение от _Ivana 
зачем вам плюсовые стринги
Форумом не ошиблись?
Сообщение от alsav22 
Может в форуме по Си поспорить?
Там народ в среднем умнее, не будет спорить с очевидным 🙂
Сообщение от alsav22 
Форумом не ошиблись?
Было б там так многолюдно и весело, а здесь скучно и тоскливо (как в разделе F#, к примеру 🙂 ) — сюда бы и не заглядывал 🙂 Но тут жизнь, потому что традиционно плюсами студентов мучают чаще. Но «сишные» строки — вполне себе часть плюсов, так что претензии имхо неуместны 🙂
| Меню пользователя @ _Ivana |
| Читать блог |
![]()
8864 / 6641 / 907
Регистрация: 14.02.2011
Сообщений: 23,372
Сообщение от Skampf 
Если выводить через printf какое должно быть значение
%s строка
%c символ
Заблокирован
Сообщение от Skampf 
Если выводить через printf
Сообщение от _Ivana 
зачем вам плюсовые стринги
Похоже, вам всё-таки нужны строки char.
«Плюсовые стринги» естественно выводить через cout, а не printf (см.пост №3).
Заблокирован
Что то не чего не получается.
присваиваю переменной x слово. Выводится 0
5496 / 4891 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
Сообщение от _Ivana 
так что претензии имхо неуместны
Это не претензии, недоумение: человек, на С++ форуме, спаршивает:
Сообщение от _Ivana 
зачем вам плюсовые стринги
Добавлено через 1 минуту
Сообщение от Skampf 
присваиваю переменной x слово. Выводится 0
Код продемонстрируй, ясновидящих тут нет.
Заблокирован
Сообщение от alsav22 
Код продемонстрируй, ясновидящих тут нет.
1 2 3 4 5 6
switch (q) { case 1: string x="один"; } coutxendl;
Заблокирован
Skampf, давайте весь код.
Заблокирован
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
// dz_3_7.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include #include #include using namespace std; int _tmain(int argc, _TCHAR* argv[]) { setlocale(LC_ALL,"RUS"); int n,x,q,w,e,r,t,z; printf("Введите натуральное число от 0 дл 10000 - "); scanf("%d",&n); if(n==10000){printf("\n%d - Десять тысяч\n\n",n);}else if ((n>=0) cout} else {printf("\nВы ввели не правильное число\n");} } system("pause"); return 0; } ;
Заблокирован
Сообщение от Skampf 