Почему не работает string

Почему не коректно работает To.String();

Помогите разобраться, почему не работает To.String() выдает символ но не текст.

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Почему не работает string ?
В чем здесь ошибка ? #include #pragma hdrstop #include «Unit1.h».

Почему оператор OR не работает на string
Почему OR нельзя использовать на String? Т.е. так: program Ani_was_here; label M1; const.

String.Insert() не пойму почему коряво работает
Console.WriteLine(«Input a string:»); string str = Console.ReadLine(); .

1С 7,7 не работает коректно
Всем здрав, столкнулся с проблемой, 1С 7,7 работает только на 1 из компов. Ошибка «порядок.

Потому что Dz8 неявно преобразуется в char и у метода Console.WriteLine есть перегрузка, принимающая char.

Gets не коректно работает
gets не коректно работает в следующем коде смысл программы в 2-ух 4 значных строках найти.

JS не коректно работает
Привет! Помогите. Проблема такова. Разробатывал сайт на своем компе. Выложил на hosting. Форма.

Не коректно работает домен
Добрый день.у меня вот такая вот проблема,прикрепил домен к сайту , а он у меня не работает. думал.

Мышь работает не коректно
И так заметил эту проблему в игре и как оказалось она качается всей системы. В чем суть , если.

Не коректно работает mmcontrol
Помогите, на моем компе перестал работать mmcontrol.(на форму добавляется этот компонент, но но при.

Источник

Не видит класса string

Проект не компилируется с ошибками:
1>g:\main\industrialprograming\visual studio\projects\testproject\testproject\test.h(12): error C2146: синтаксическая ошибка: отсутствие «;» перед идентификатором «s»
1>g:\main\industrialprograming\visual studio\projects\testproject\testproject\test.h(12): error C4430: отсутствует спецификатор типа — предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>g:\main\industrialprograming\visual studio\projects\testproject\testproject\test.h(12): error C4430: отсутствует спецификатор типа — предполагается int. Примечание. C++ не поддерживает int по умолчанию

Прошу подсказать, в чём дело? Это я что-то в настройках сбил?

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Visual studio не видит метод класса String
Для программы понадобился метод Contanins класса string, когда пишу его в студии, она выдаёт, что.

Почему объект производного класса не видит префиксный оператор из базового класса?
Короче создал я базовый класс с перегруженным префиксным оператором ++. Потом чтоб его.

С++, delete в деструкторе класса не видит переменные, создаваемые new в конструкторе класса
#include «stdafx.h» #include «iostream» #include «math.h» using namespace std; class fun <.

Все очень просто.
Файл.h — это заголовочный файл — там описываются все переменные и функции (в краткой форме — тобишь объявляются к какому типу они пренадлежат.)

Файл.cpp — файл испольнительные — там уже описывается чему равна каждая переменная и что делают функции.

У тебя нет второго файла вот и не работает.)

Если тебе нужно именно это скомпилировать — хотя ничего ты не увидишь в конце компиляции, то просто создай отдельно cpp файл и впиши туда все это.

Кстати cpp отдельно может существовать и прекрасно компилируется .) (могу ошибаться не ругайте больно)

Источник

Проблема с std::string

Не могу понять, как сложить строки?

Читайте также:  Единовременное пособие при рождение если женщина не работает

3 ответа 3

У вас [почти] все работает прекрасно, но именно так как вы и написали. В конце вашей функции to_string вы делаете

где len включает и нулевой терминатор тоже. То есть из вашей функции вы возвращаете строки

и т.д. А потом вы эти строки конкатенируете в одну и получаете

Все работает, как и должно работать. Строки std::string не являются нуль-терминированными и в их составе символ ‘\0’ является обыкновенным символом.

Однако при попытке печати такой последовательности через printf , разумеется, печать идет только до первого ‘\0’ . Напечатайте ваш результат через

и вы увидите, что все элементарные строки в составе вашей строки присутствуют. То есть все у вас прекрасно соединяется, только вы зачем-то напихали внутрь вашей строки ненужных нулей.

Память для каждого нуля внутри вашей функции изначально выделять нужно (ибо вы пользуетесь vsprintf_s ), но перед возвращением результирующего значения этот нуль из строки надо убрать, т.е. в вашем случае сделать

Также не забывайте делать va_end и перезапускать va_list (даже если майкрософтовские примеры иногда «забывают» это делать).

(Максимально сохраняя ваш подход)

Функциональность, которую вы пытаетесь реализовать (раз уж вы хотите сделать это именно так), уже давно можно реализовать стандартными средствами через vsnprintf , без привлечения нестандартных майкрософтовских средств

Источник

Не работает std::to_string();

Не работает std::to_string();
-std=c++11
gcc —version => gcc 5.3.0

Как заставить работать?

Помощь в написании контрольных, курсовых и дипломных работ здесь.

не находит std::to_string
Не пойму что не так, выдает ошибку Версия gcc 4.7.2-5 #include #include .

‘to_string’ is not a member of ‘std’
результат должен быть таким : «110100100010000100000100000(и т.д.)» #include .

Что означает std::string to_string( int value )?
Что означает: std::string to_string( int value )

JackLas, добавьте в строке компоновщика:

Что значит «не работает»? Бастует? Есть просит? Ленится? Или есть другая причина?
Минимальный код в студию.

P.S. g++ вместо gcc

А вы случайно не сишным компилятором собираетесь компилировать? Используйте g++.
Если на mingw сидите, то скорее всего std::to_string не будет работать — его почему-то не портировали.

Добавлено через 2 минуты
Саму функцию не сложно написать

У меня g++ (i686-posix-dwarf, Built by MinGW-W64 project) 6.1.0 и эта функция есть. В какой-то там версии типа 5.х.х у меня не было этой функции, да. Но теперь есть.

Может быть я что-то делаю не так?

Тут стоит уточнить версию. На моей памяти я ни разу не сталкивался с проблемой отсутствия реализации данной функции.

P.S.: выражения: «я утверждаю» и «скорее всего» как-то не очень совместимы, вам не кажется?)

Добавлено через 4 минуты
JackLas, наберите в командной строке gcc -v и покажите результат.

Источник

Урок №7. Решения самых распространенных проблем

Обновл. 11 Сен 2021 |

На этом уроке мы рассмотрим наиболее частые проблемы, с которыми сталкиваются новички при написании программ на языке C++.

Проблема №1

Как использовать кириллицу в программах C++?

Ответ №1

Чтобы выводить кириллицу в языке C++ нужно подключить заголовочный файл :

И прописать следующие две строки в функции main():

В качестве альтернативного варианта можно использовать следующую строку в функции main():

Проблема №2

При выполнении программы появляется черное консольное окно, а затем сразу пропадает.

Ответ №2

Некоторые компиляторы (например, Bloodshed’s Dev C++) автоматически не задерживают консольное окно после того, как программа завершила свое выполнение. Если проблема в компиляторе, то следующие два шага решат эту проблему:

Читайте также:  Бонго кот вебка как настроить

Шаг №1: Добавьте следующую строку кода в верхнюю часть вашей программы:

Шаг №2: Добавьте следующий код в конец функции main() (прямо перед оператором return):

Таким образом, программа будет ожидать нажатия клавиши, чтобы закрыть консольное окно. Вы получите дополнительное время, чтобы хорошенько всё рассмотреть/изучить. После нажатия любой клавиши, консольное окно закроется.

Другие решения, такие как system(«pause»); , могут работать только на определенных операционных системах, поэтому вариант, приведенный выше, предпочтительнее.

Примечание: Visual Studio не задерживает консольное окно, если выполнение запущено с отладкой ( «Отладка» > «Начать отладку» или F5 ). Если вы хотите, чтобы была пауза — воспользуйтесь решением выше или запустите программу без отладки ( «Отладка» > «Запуск без отладки» или Ctrl+F5 ).

Проблема №3

При использовании cin, cout или endl компилятор говорит, что cin, cout или endl являются «undeclared identifier» (необъявленными идентификаторами).

Ответ №3

Во-первых, убедитесь, что у вас присутствует следующая строка кода в верхней части вашей программы:

Во-вторых, убедитесь, что cin , cout или endl имеют префикс std:: , например:

Проблема №4

При использовании endl для перехода на новую строку, появляется ошибка, что end1 является «undeclared identifier».

Ответ №4

Убедитесь, что вы не перепутали букву l (нижний регистр L ) в endl с цифрой 1 . В endl все символы являются буквами. Также легко можно перепутать заглавную букву О с цифрой 0 (ноль).

Проблема №5

Моя программа компилируется, но работает не так, как нужно. Что мне делать?

Ответ №5

Выполните отладку программы. Детально об этом читайте на уроке №26 и на уроке №27.

Проблема №6

Как включить нумерацию строк в Visual Studio?

Ответ №6

Перейдите в меню «Средства» > «Параметры» :

Затем откройте вкладку «Текстовый редактор» > «Все языки» > «Общие» и поставьте галочку возле «Номера строк» , затем нажмите «ОК» :

Проблема №7

При компиляции программы я получаю следующую ошибку: «unresolved external symbol _main or _WinMain@16».

Ответ №7

Это означает, что ваш компилятор не может найти главную функцию main() . Все программы должны содержать эту функцию.

Здесь есть несколько пунктов, которые нужно проверить:

Есть ли в вашей программе функция main() ?

Слово main написано правильно?

Подключен ли файл, который содержит функцию main() , к вашему проекту? (если нет, то переместите функцию main() в файл, который является частью вашего проекта, либо добавьте этот файл в ваш проект)

Подключен ли файл, содержащий функцию main() , к компиляции?

Проблема №8

При компиляции программы я получаю следующее предупреждение: «Cannot find or open the PDB file».

Ответ №8

Это не ошибка, а предупреждение. На работоспособность вашей программы оно не повлияет. Тем не менее, в Visual Studio вы можете решить всё следующим образом: перейдите в меню «Отладка» > «Параметры» > «Отладка» > «Символы» и поставьте галочку возле «Серверы символов (Майкрософт)» , затем нажмите «ОК» .

Проблема №9

Я использую Code::Blocks или G++, но функционал C++11/C++14 не работает.

Ответ №9

В Code::Blocks перейдите в «Project» > «Build options» > «Compiler settings» > «Compiler flags» и поставьте галочку возле пункта «Have g++ follow C++14 ISO C++ language standard» . Смотрите урок №4 — там есть скриншоты, как это сделать.

При компиляции в g++, добавьте следующий код в командную строку:

Проблема №10

Я запустил программу, появилось консольное окно, но ничего не выводится.

Ответ №10

Ваш антивирус может блокировать выполнение вашей программы. Попробуйте отключить его на время и запустите программу еще раз.

Читайте также:  Учреждения работали бы превосходно если бы не посетители

У меня есть другая проблема, с которой я не могу разобраться. Как и где я могу получить ответ?

По мере прохождения данных уроков, у вас, несомненно, появятся вопросы или вы столкнетесь с проблемами. Что делать?

Во-первых, спросите у Google. Четко сформулируйте вашу проблему и просто «погуглите». Если у вас есть сообщение об ошибке — скопируйте его и вставьте в поиск Google, используя кавычки. Скорее всего, кто-то уже задавал такой же вопрос, как у вас, и получил на него ответ.

Если Google не помог, то спросите на специализированных сервисах вопросов/ответов, либо на форумах, посвященным тематике программирования/IT. Вот самые популярные из них:

Но будьте внимательны и старайтесь максимально конкретизировать свою проблему, укажите, какую операционную систему и IDE вы используете, а также то, что вы пробовали сделать самостоятельно для решения своей проблемы.

Поделиться в социальных сетях:

Урок №6. Режимы конфигурации «Debug» и «Release»

Комментариев: 43

Добавлю для тех кто на линуксе.
Путь проекта должен быть полностью на английском, а то будет выдавать блок будет ошибку выдавать при компиляции и дебаге: no input file.

Не знаю описана ли эта особенность выше, однако она может добавить много геморроя от поиска решения проблемы.

Если у вас при компиляции программы выскакивает на экране предупреждение по типу:

(Я приучиваюсь к английскому интерфейсу, поэтому, собственно, пример сообщения тоже приведу на нём:)
Some Unicode characters in this file could not be saved int the current codepage. Do you want to resave this file as Unicose in order to maintain your data?

И варианты ответа:
Да(В первый раз я бездумно клацнул эту кнопку. Оказалось зря — посыпались ошибки);
Нет;
Сохранить с другой кодировкой;
Отмена.

Итак, что нужно делать:
Нажимаем на ‘Сохранить с другой кодировкой / Save with another encoding’;
Под словом, соответственно, ‘Кодировка: / Encoding: ‘ кликаем на скролл бар, и нам открывается обширный набор кодировок;
Совсем чуть-чуть промотав, находим Cyrillic (Windows) -Codepage 1251 и выбираем его.
Кликаем ОК, и, затаив дыхание, следим за окошком вывода;)

Присоединяюсь к вопросу о возможности ввода-вывода китайских иероглифов с использованием ввода стандартного языка в пакете Windows. Все, что лежит на поверхности на форумах (типа setlocale(chinese_simplified) с различными аббревиатурами аргумента и предлагаемыми инклудами уже испробовано. IDE Dev++. Не писать же их через кодировку в unicode

к первому вопросу.
нужно что б юникод редактора совпадал с юникодом винды.
по стандарту он UTF-8 должен быть. его нужно поменять в проге в какой вы пишите код и затем в винде.

1.Нажмите Пуск, затем Панель управления
2.Нажмите Часы, язык и регион
3.В Windows 10, Windows 8: нажмите Регион
В Windows 7: нажмите Язык и региональные стандарты
В Windows XP: нажмите Язык и региональные стандарты
4.Открывается диалоговое окно «Язык и региональные стандарты».
5.Нажмите на вкладку Администрирование
В Windows XP нажмите на вкладку Дополнительно
Если такой вкладки нет, то вход выполнен не с полномочиями
администратора.
6.Под строкой «Язык программ, не поддерживающих Юникод» нажмите Изменить язык системы и выберите нужный язык.
Нажмите ОК
Перезапустите компьютер, чтобы изменения вступили в силу

у меня сработало.

И у меня сработало! Благодарю! С Новым Годом и Рождеством!

Источник

Оцените статью