Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Kif
0 / 0 / 0
Регистрация: 11.04.2013
Сообщений: 20
#1

Как избавиться от предупреждения? - C++

27.04.2013, 08:41. Просмотров 557. Ответов 12
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
 
char Number[100];
double   Result = atof(Number);
    Result=(-1)*Result;
        _itoa(Result,Number,10);
     SetWindowText(Edit,Number);    
     printf(Number, "%f ", Result);
warning: passing `double' for converting 1 of `char* _itoa(int, char*, int)'
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2013, 08:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как избавиться от предупреждения? (C++):

Статический метод как точка входа в поток - как избавиться - C++
Привет всем.Вопрос такой: использую потоки в своей программе,они создаются и уничтожаются в классе, и в классе так же находится...

Как избавиться от dynamic_cast? - C++
Ребят, у меня проблема такая! Не могу никак записать изменение в файл зависает, да и почему то по два раза выдает некоторые вещи да еще и...

Как избавиться от ошибок?!?!?! - C++
При компиляции выдает кучу ошибок ,как это исправить?!?!?! #include<iostream> #include<clocale> #include<stdio.h> using...

Как избавиться от округления - C++
Доброго времени суток. У меня следующая проблема. pp = 0.1534886 + 151.5235 - 0.15668835467; pp имеет тип double, но в качестве...

Предупреждения - C++
Подскажите как избавиться от этих предупреждений 1> c:\program files (x86)\microsoft visual studio...

Как избавиться от тернарных операторов? - C++
Нужно было написать код без if'ов, но не получилось(или их имитации, так точнее). Программа определяет принадлежит ли слово языку. А...

12
Саня gamer
97 / 71 / 1
Регистрация: 18.05.2011
Сообщений: 343
Записей в блоге: 1
27.04.2013, 08:46 #2
C++
1
char* _itoa(int, char*, int)
и
C++
1
_itoa(double,Number,10);
первым аргументом должен быть int
1
Kif
0 / 0 / 0
Регистрация: 11.04.2013
Сообщений: 20
27.04.2013, 08:51  [ТС] #3
а для вещественного числа есть функция?
0
Байт
Нарушитель
Эксперт C
16679 / 10941 / 1679
Регистрация: 24.12.2010
Сообщений: 21,329
27.04.2013, 11:36 #4
Цитата Сообщение от Kif Посмотреть сообщение
для вещественного числа есть функция
sprintf(Number, "%.2f", Result);
1
Kif
0 / 0 / 0
Регистрация: 11.04.2013
Сообщений: 20
27.04.2013, 18:02  [ТС] #5
а как из массива char Number[100];
с конца удалить символы равные нулю до символа не равному нулю?
0
stima
493 / 343 / 43
Регистрация: 22.03.2011
Сообщений: 1,104
Завершенные тесты: 2
27.04.2013, 18:19 #6
Удалить никак char[] это обьект стека. Можно только "пометить". Зачем Вам это?, возможно вам нужно не удалять, а переместить все нули вперед?
1
Kif
0 / 0 / 0
Регистрация: 11.04.2013
Сообщений: 20
27.04.2013, 18:30  [ТС] #7
при нажатие кнопки +/- конвертирует число например 9 получается -9.00000 , я не знаю как от этой лабуды избавится
0
stima
493 / 343 / 43
Регистрация: 22.03.2011
Сообщений: 1,104
Завершенные тесты: 2
27.04.2013, 18:48 #8
А исходная задача какая?
1
Kif
0 / 0 / 0
Регистрация: 11.04.2013
Сообщений: 20
27.04.2013, 19:11  [ТС] #9
калькулятор на winapi делаю
0
stima
493 / 343 / 43
Регистрация: 22.03.2011
Сообщений: 1,104
Завершенные тесты: 2
27.04.2013, 21:34 #10
Цитата Сообщение от Kif Посмотреть сообщение
при нажатие кнопки +/- конвертирует число например 9 получается -9.00000 , я не знаю как от этой лабуды избавится
Извините но я не смог это распарсить. Как конвертирует, от какой лабуды? Вы хотите инвертировать знак?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int len = GetWindowTextLength();
char *str = (char*)malloc((1 + len + 1) * sizeof(char));
GetWindowText(str + 1, len);
 
if (str[1] == '-')
   SetWindowText(str + 2);
else
{
  str[0] = '-';
  SetWindowText(str);
}
 
free(str);
1
Kif
0 / 0 / 0
Регистрация: 11.04.2013
Сообщений: 20
27.04.2013, 23:49  [ТС] #11
в Number строка с числами.(9=-9.000000) нужно избавиться от .000000
C++
1
2
3
4
double Result = atof(Number);
         Result=(-1)*Result;
             sprintf(Number, "%f", Result);
         SetWindowText(Edit,Number);
0
stima
493 / 343 / 43
Регистрация: 22.03.2011
Сообщений: 1,104
Завершенные тесты: 2
27.04.2013, 23:57 #12
Вот вы взялись за калькулятор но не знаете как работать с числами. Мантиса появляется из-за double.

C++
1
Result=(-1)*Result;
Вот это говорит о том что вы хотите инвертировать знак. Посмотрите мой пример.
1
Kif
0 / 0 / 0
Регистрация: 11.04.2013
Сообщений: 20
28.04.2013, 00:10  [ТС] #13
спасибо шеф, я не по своей воли за это взялся.
0
28.04.2013, 00:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.04.2013, 00:10
Привет! Вот еще темы с ответами:

Как избавиться от мерцания в gdi? - C++
Как избавиться от мерцания в gdi? Пробовал делать двойную буфферизацию с помощью CreateCompatibleBitmap и BitBlt, но не рисовался даже...

как избавиться от округления float - C++
#include <iostream> using std:: cin; using std:: cout; using std:: endl; int main() { cout << "123.008 + 0.0008 = " <<...

Как избавиться от ошибки компоновщика? - C++
Как избавиться от ошибки компоновщика в vs2008? Сначала вылезала в мфц проектах, а теперь уже везде. Переустановка не помогает

Как избавиться от записи мусора? - C++
#include <string.h> #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <iostream.h> #include <iostream> ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.