Как присвоить переменной char значение слова
@avp Вообще-то, это не стандартная функция. Это POSIX функция. Ей можно пользоваться, но чтобы код компилировался, нужно либо задать макрообъявление, либо опцию компилятора.
12 дек 2016 в 21:47
Ну, Вы даете. И с каких это пор POSIX не стандарт? Вообще, если в gnu есть, то можно пользоваться. А если где-то ее (или какой другой) и не будет, значит самому надо там реализовать.
12 дек 2016 в 22:05
@avp POSIX — не указ C стандарту.:)
12 дек 2016 в 22:13
POSIX — не указ C стандарту.:) О Господи. А вот это : «POSIX (англ. portable operating system interface — переносимый интерфейс операционных систем) — набор стандартов, описывающих интерфейсы между операционной системой и прикладной программой (системный API), библиотеку языка C и набор приложений и их интерфейсов. » — ничего не значит? Стандарт, в котором оговариваются БИБЛИОТЕКИ С не указ для БИБЛИОТЕК С ?!
13 дек 2016 в 2:43
- c
- массивы
- указатели
- строковый-литерал
Присвоение переменной значение строки
Для конвертаций (преобразований) в .NET используются такие методы:
- int → string : TryFormat , Format , ToString
- string → int : TryParse , Parse
Таким образом остаётся такой набор методов: Format , ToString , Parse (прочие методы рассматриваться не будут). Разберёмся с каждым по порядку.
- Format : записывает int → Span в виде строки. Span – это универсальный буфер: в нём можно хранить строку, массив и даже неуправляемый буфер. Span – это всего лишь ссылка на элемент исходного буфера + длина, т. е.
var span = str.AsSpan();
…не создаёт новый буфер. Поэтому но так важен. Ссылка #1, cсылка #2, если вы хотите подробнее узнать о Span .
- ToString просто преобразует int → string (возможно, вам когда-то давали задание: «Преобразуйте беззнаковое целочисленное число в строку»).
- Parse делает обратное, т. е. string / ReadOnlySpan → int . Это то, что вам нужно.
Также методы Format и ToString имеют 2 аргумента: format и formatProvider . format – это, как не сложно догадаться, формат числа, т. е. нужно ли ставить пробелы м-ду каждыми 3-я цифрами, нужно ли указывать валюту, или это процент, и т. д. formatProvider – это поставщик форматера. Это сложно, поэтому просто знайте, что в него можно запихнуть нужную культуру. Например:
var num = 5; var ruRU = new CultureInfo("ru-RU"); // русская культура var enUS = new CultureInfo("en-US"); // американская культура Console.WriteLine(num.ToString("C", ruRU)); // 5,00 ₽ Console.WriteLine(num.ToString("C", enUS)); // $5.00
Метод Parse также принимает 2 аргумента: style и formatProvider . Про 2-й вы уже знаете – повторяться не буду. Аргумент style указывает допущения для числа, т. е. может ли оно иметь те же пробелы, может ли оно быть 16-ричным, может ли иметь минус и т. д. Т. е. полная противоположность format .
Как присвоить строке новое значение в C++?
В строке string[]=»zaqzaqzaq»; ошибка, красным выделены квадратные скобки, курсор между ними и ошибка: [Error] expected primary-expression before ‘]’ token Как правильно присвоить строке символов новое значение?
Отслеживать
задан 10 фев 2018 в 14:09
257 1 1 золотой знак 3 3 серебряных знака 15 15 бронзовых знаков
int main() , а не просто main() .
10 фев 2018 в 15:20
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
Если вы пишете на C++, то зачем вам char? Используйте готовый объект типа string:
#include using namespace std; main()
Отслеживать
ответ дан 10 фев 2018 в 14:19
Mark Tiukov Mark Tiukov
140 1 1 золотой знак 1 1 серебряный знак 13 13 бронзовых знаков
Очень неудачное имя для переменной вы выбрали.
10 фев 2018 в 14:37
C++ НЕ поддерживает int по-умолчанию
– user227465
10 фев 2018 в 15:00
@GreenDragon: Как впрочем и С его уже давно не поддерживает.
10 фев 2018 в 15:18
@zed , да, пожалуй для начинающих это не очень удачное название переменной. Спасибо за указание! 😉
10 фев 2018 в 16:03
насколько я понел речь шла о инициализации массива, а не как получать строку
char string[] = "qazqazqaz"; char s[] = "zaqzaqzaq"; strcpy(string, s); cout
Отслеживать
ответ дан 10 фев 2018 в 14:39
AR Hovsepyan AR Hovsepyan
15.9k 3 3 золотых знака 14 14 серебряных знаков 30 30 бронзовых знаков
А если новая строка будет длиннее?
10 фев 2018 в 14:47
@zed это уже другой вопрос
10 фев 2018 в 14:55
Поскольку вы рассмотрели лишь крайний случай, когда обе строки имеют одинаковый размер, ваш ответ по сути бесполезен. Вопрос же в том, как динамически присваивать строке другое значение, которое может и не совпадать по длине.
10 фев 2018 в 15:02
@ zed, я читать умею, но не нашел в вопросе даже намека на ваше утверждение. Просто простой ответ на простой вопрос - не вижу надобности обсуждать дальше. Даже неинтересно. То что у вас есть знания по С строкам, я уже понел
10 фев 2018 в 15:10
Самая последняя строка в вопросе: Как правильно присвоить строке символов новое значение? И раз там не сказано, что надо присвоить строку того же самого размера, то стоит воспринимать вопрос в общем.
Присвоить значение строке
Присвоить значение colorDialog строке
Добрый день. Может поможете новичку, честно - тока тока знакомлюсь c C#. Изобретаю редактор CSS.
Присвоить значение строке многомерного массива
Есть двумерный массив типа double. Написана функция, разбирающая строку (string) на отдельные.
Присвоить строке значение другой строки
Добрый день. У меня есть строки FILE_OVL_1 DB 'ABCD',0 FILE_OVL_2 DB .
Datagridview, присвоить одной строке значение другой
как можно присвоить одной строке значение другой? dataGridView1.Rows = dataGridView1.Rows;.