Форум программистов, компьютерный форум CyberForum.ru

Перевод из int в char - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 28, средняя оценка - 4.68
AfoTax
 Аватар для AfoTax
0 / 0 / 0
Регистрация: 05.12.2011
Сообщений: 37
17.01.2012, 20:36     Перевод из int в char #1
Пытаюсь перевести число int в строку char. На экран постоянно выводит какие-то иероглифы.
Не могли бы вы ОБЪЯСНИТЬ почему так?
Код мое проги:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<stdio.h>
void main()
{
    char str[22];
    int n,q=0,ost;
    printf("vvedite chislo\n");
    scanf("%d",&n);
    for(int i=n;i!=0;)
    {
        i=i/10;
        q++;
    }
    printf("q=%d\n",q);
    for(q;n!=0;--q)
    {
        ost=n%10;
        n=n/10;
        str[q]=ost+'0';
        printf("%s\nost=%d\n",&str[q],ost);
    }
    puts("Vivod massiva");
    puts(str);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2012, 20:36     Перевод из int в char
Посмотрите здесь:

перевод из char в int C++
C++ Массив char + перевод в int
Перевод массива из char в int C++
Перевод элементов массива char в int C++
Перевод из char в int C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NoMasters
Псевдослучайный
1737 / 1080 / 69
Регистрация: 13.09.2011
Сообщений: 3,094
17.01.2012, 20:43     Перевод из int в char #2
Концом строки считается нулевой символ.
K1m
 Аватар для K1m
9 / 9 / 1
Регистрация: 02.01.2012
Сообщений: 167
17.01.2012, 20:45     Перевод из int в char #3
То есть '\0'
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
17.01.2012, 22:18     Перевод из int в char #4
man sprintf
AfoTax
 Аватар для AfoTax
0 / 0 / 0
Регистрация: 05.12.2011
Сообщений: 37
18.01.2012, 00:13  [ТС]     Перевод из int в char #5
Спасибо конечно, но можно ли как-нибудь на примере поправки моего кода увидеть?)
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
18.01.2012, 00:20     Перевод из int в char #6
Цитата Сообщение от AfoTax Посмотреть сообщение
можно ли как-нибудь на примере поправки моего кода увидеть?
C
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
#include<stdio.h>
 
/*void main()*/
int main(void)
{
        char str[22];
        int n /*,q=0,ost */;
        /*
        printf("vvedite chislo\n");
        scanf("%d",&n);
        for(int i=n;i!=0;)
        {
                i=i/10;
                q++;
        }
        printf("q=%d\n",q);
        for(q;n!=0;--q)
        {
                ost=n%10;
                n=n/10;
                str[q]=ost+'0';
                printf("%s\nost=%d\n",&str[q],ost);
        }
        puts("Vivod massiva");
        puts(str);
        */
        while ( printf("Number: ") && scanf("%d", &n) == 1 ){
            sprintf(str, "%d", n);
            printf("As string: %s\n", str);
        }
        
        return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.01.2012, 00:50     Перевод из int в char
Еще ссылки по теме:

Перевод int и double в char* C++
C++ Перевод *char в int[] c++
C++ Перевод char в int

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

Или воспользуйтесь поиском по форуму:
AfoTax
 Аватар для AfoTax
0 / 0 / 0
Регистрация: 05.12.2011
Сообщений: 37
18.01.2012, 00:50  [ТС]     Перевод из int в char #7
Как всё просто))
Спасибо.
Yandex
Объявления
18.01.2012, 00:50     Перевод из int в char
Ответ Создать тему
Опции темы

Текущее время: 21:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru