Программирование на c++

Подскажите как скопировать часть строки. То есть с первого символа до x и от + до =. В интернете есть функция strcpy, но компилятор пишет error: 'strcpy' was not declared in this scop.

-1
DarkneSS - 28 Октябрь, 2014 - 12:51
Изображение пользователя DarkneSS.

Добавьте инклюд заголовка с этой функцией.

+1
DarkneSS - 28 Октябрь, 2014 - 12:51
Изображение пользователя DarkneSS.

Добавьте инклюд заголовка с этой функцией.

0
Andru - 28 Октябрь, 2014 - 13:20

И какой этот инклюд? И ещё нужна функция определяющая каким по счёту идёт символ x. Потом надо будет удалить всё до + вмести с ним, и скопировать всё до =. Потом надо будет выполнить действие с полученными данными, но они получаются типа char, а выполнять с ними действия нельзя. Интересует как можно перевести этот тип в тип fload?

+1
RA9OAJ - 28 Октябрь, 2014 - 13:25
Изображение пользователя RA9OAJ.

string.h
насколько помню...

0
fox4 - 28 Октябрь, 2014 - 17:43
Изображение пользователя fox4.

И ещё нужна функция определяющая каким по счёту идёт символ x
вот здесь
Интересует как можно перевести этот тип в тип float?
как то так
собственно google знает ответы почти на все вопросы не ленитесь искать.

0
Andru - 29 Октябрь, 2014 - 02:33

А как к переменной типа float добавить значение другой переменной. То есть если в одной 5, а в другой 2 то должно получиться 52, а не 7.

0
MacLeod - 29 Октябрь, 2014 - 04:55
Изображение пользователя MacLeod.

Можно использовать поток вывода:
#include <iostream>
#include <string>
#include <sstream>

int main()
{
    float fOne = 5.f, fTwo = 2.f;

    std::ostringstream stm;

    stm << fOne << fTwo;

    std::cout << stm.str() << std::endl;

    return 0;
}

А если использовать стандарт С++11, там для преобразования доступна такая функция:
std::string a = std::to_string(fOne) + std::to_string(fTwo);

0
Condor - 29 Октябрь, 2014 - 21:23
Изображение пользователя Condor.

А зачем так сложно?
Можно же просто floattostr(5).floattostr(2)

0
MacLeod - 29 Октябрь, 2014 - 21:44
Изображение пользователя MacLeod.

Вообще-то в php явно приводить данные типы не нужно, да и "кресты" тут у нас =)

0
Andru - 30 Октябрь, 2014 - 06:20

Тут немного другой смысл. Есть цикл, в нём условия. Если условие выполняется то к переменной добавить цифру, если нет то переходим к следующему условию и т. д.

0
MacLeod - 30 Октябрь, 2014 - 15:31
Изображение пользователя MacLeod.

И как это мешает? Давай уже задачку целиком... =)

0
Andru - 31 Октябрь, 2014 - 06:29

Написать программу решающую уравнение вида ax+b=с. При этом вводят не коэффициенты a и b, а само уравнение то есть 124x+2356=0 или -213x+6135=3444 . При этом если a=0 и b=c то выводится надпись что x любое. Если a=0 и b неравно c то надпись нет корней.

0
Condor - 30 Октябрь, 2014 - 19:53
Изображение пользователя Condor.

floattostr из крестов и есть. И в сях и на делфях было.
А, объединение точкой да, не сканает, по привычке написал, можно соединять примерно так: strcat(floattostr(5),floattostr(2)), ну или как у тебя, потоками.
На сях лет 15 назад писал, если не считать поделки по-мелочи, так что мой маразм простителен :0))

0
MacLeod - 30 Октябрь, 2014 - 21:27
Изображение пользователя MacLeod.

Покажи заголовок с объявлением данной функции =) Набось, в билдере каком-нить юзал. Зачем учить плохому?

+1
lord_i - 28 Октябрь, 2014 - 14:25
Изображение пользователя lord_i.

Вот не пойму - зачем тут это?

0
lubomir1976 - 28 Октябрь, 2014 - 17:51
Изображение пользователя lubomir1976.

Возможно, чтобы было.

0
MacLeod - 28 Октябрь, 2014 - 17:55
Изображение пользователя MacLeod.

Чтобы в разделе "программирование" мышь не повесилась =)

+1
MacLeod - 28 Октябрь, 2014 - 18:08
Изображение пользователя MacLeod.

Нужно понять, что есть стандартная библиотека языка C, а есть для С++.
#include <string.h> - для С
#include <cstring> - для С++
Вторая, по сути - лишь обертка для первой.
Родной для С++ является реализация std::string
#include <string>
Работа со строками есть еще в куче библиотек, вплоть до Qt.
Функции вроде ctrcpy - являются небезопасными (работают с указателями и можно налепить ошибок, вызывающих переполнение буфера), однако они работают быстрее своих безопасных ООП аналогов.

+1
Tonal - 31 Октябрь, 2014 - 09:43
Изображение пользователя Tonal.

Со строками в С++ нужно работать через std::string, а не через char*.
Иначе новичёк рискует словить разные вкусности типа переполнения стека и потерянной памяти...

Разбор выражения общего вида проще всего писать методом рекурсивного спуска.
В твоём случае нужно написать функции для разбора числа, переменной, оператора и вызвать их в нужной последовательности.

Ну и домашние задания лучше делать самостоятельно, не привлекая коллективный разум.
Иначе твой разум останется на уровне амёбы. :)

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры