0 / 0 / 0
Регистрация: 05.12.2011
Сообщений: 37
1

Перевод из int в char

17.01.2012, 20:36. Показов 7057. Ответов 6
Метки нет (Все метки)

Пытаюсь перевести число 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);
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2012, 20:36
Ответы с готовыми решениями:

Перевод char в int
Доброго времени суток, форумчане:senor:. Начинаю углубляться с++ вместе с заданием по курсовой:)...

Перевод *char в int[] c++
Нужно перевести длинное число которое хранится в виде &quot;+/-324354365654656&quot; в char* в массив int....

Перевод из char в int
Подскажите пожалуйста! У меня имеется массив символов, то бишь строка. Я хочу преобразовывать...

Перевод из char в int
нужно перевести из char в int, способ перевода следующий: &quot;значение цифры равно значению ее...

6
Псевдослучайный
1946 / 1145 / 98
Регистрация: 13.09.2011
Сообщений: 3,215
17.01.2012, 20:43 2
Концом строки считается нулевой символ.
0
9 / 9 / 3
Регистрация: 02.01.2012
Сообщений: 169
17.01.2012, 20:45 3
То есть '\0'
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
11717 / 7222 / 1712
Регистрация: 25.07.2009
Сообщений: 13,223
17.01.2012, 22:18 4
man sprintf
0
0 / 0 / 0
Регистрация: 05.12.2011
Сообщений: 37
18.01.2012, 00:13  [ТС] 5
Спасибо конечно, но можно ли как-нибудь на примере поправки моего кода увидеть?)
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
11717 / 7222 / 1712
Регистрация: 25.07.2009
Сообщений: 13,223
18.01.2012, 00:20 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;
}
1
0 / 0 / 0
Регистрация: 05.12.2011
Сообщений: 37
18.01.2012, 00:50  [ТС] 7
Как всё просто))
Спасибо.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.01.2012, 00:50
Помогаю со студенческими работами здесь

Перевод char в int
Доброго времени суток. покопался по схожим темам,но так и не нашёл ответа. На вводе с клвиатуры...

Перевод int и double в char*
Возникла следующая проблема. Нужно сделать: //Реализовать класс var - «Универсальная переменная»....

Перевод int в char (строку)
Есть код я покажу только части для указания на проблему int c=0; char a={' ',' '};...

Массив char + перевод в int
Нужно создать цикл в котором при вводе с клавиатуры символа в 16ричной системе (0-F) это число: 1....


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru