The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"преобразование int в строку"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"преобразование int в строку"  
Сообщение от ligurio (??) on 05-Янв-07, 15:29 
подскажите, как преобразовать тип int в строку. Функцию для преобразования строки в int нашел - atoi... а вот обратно не нашел...
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "преобразование int в строку"  
Сообщение от phpcoder (??) on 05-Янв-07, 16:11 
>подскажите, как преобразовать тип int в строку. Функцию для преобразования строки в
>int нашел - atoi... а вот обратно не нашел...

Помнится такая ф-ция была в книжке Кернигана и Ритчи. И для перевода из строки в дробные числа тоже была. Вообщем, вот пример, который я только что написал по памяти:

[root@xxx ~]# gcc -W -Wall stoi.c -o stoi
[root@xxx ~]# ./stoi
Usage: ./stoi number
[root@xxx ~]# ./stoi 123
Your number is 123
[root@xxx ~]# ./stoi 150000
Your number is 150000

Вот исходник:

[root@xxx ~]# cat stoi.c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int stoi(char *str) {
int i;
int number = 0;
int st = 1;

for (i = strlen(str)-1; i >= 0; i--) {
     number = number + ((str[i] - '0') * st);
     st *= 10;
}

return number;
}

int main(int argc, char **argv) {

if (argc != 2) {
     fprintf(stderr, "Usage: %s number\n", argv[0]);
     exit(EXIT_FAILURE);
}

printf("Your number is %d\n", stoi(argv[1]));

return EXIT_SUCCESS;
}

P.S. Писал сходу, так что возможно, что можно написать и лучше. За рута тоже не ругайте :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "преобразование int в строку"  
Сообщение от ligurio (??) on 05-Янв-07, 16:17 
>>подскажите, как преобразовать тип int в строку. Функцию для преобразования строки в
>>int нашел - atoi... а вот обратно не нашел...
>
>Помнится такая ф-ция была в книжке Кернигана и Ритчи. И для перевода
>из строки в дробные числа тоже была. Вообщем, вот пример, который
>я только что написал по памяти:

>P.S. Писал сходу, так что возможно, что можно написать и лучше. За
>рута тоже не ругайте :)

Спасибо!
P.S. ааа, phpcoder... а я тебя знаю... по жж )

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "преобразование int в строку"  
Сообщение от phpcoder (??) on 05-Янв-07, 16:23 
>Спасибо!

Да незачто. Было приятно оторваться от шельных скриптов и что-нить написать на Сях :)

>P.S. ааа, phpcoder... а я тебя знаю... по жж )

Я тебя тоже знаю по ЖЖ, но это уже offtopic :-/ (кстати, ты зачем-то удалили свой дневник)

P.S. Если будешь отвечать, то отвечай на slava.semushin / gmail.com =)


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "преобразование int в строку"  
Сообщение от DeadLoco (??) on 05-Янв-07, 17:04 
>>подскажите, как преобразовать тип int в строку. Функцию для преобразования строки в
>>int нашел - atoi... а вот обратно не нашел...
>
>Помнится такая ф-ция была в книжке Кернигана и Ритчи. И для перевода
>из строки в дробные числа тоже была. Вообщем, вот пример, который
>я только что написал по памяти:

Скажите, а чем не угодила замечательная функция sprintf()?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "преобразование int в строку"  
Сообщение от phpcoder (??) on 05-Янв-07, 17:09 
>Скажите, а чем не угодила замечательная функция sprintf()?

Ууупс! :) Тем, что я о ней совсем забыл :D А вообще, тогда уж лучше snprintf() использовать...


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "преобразование int в строку"  
Сообщение от Cub email on 06-Янв-07, 01:45 
>подскажите, как преобразовать тип int в строку. Функцию для преобразования строки в
>int нашел - atoi... а вот обратно не нашел...


cub@tux ~ % man atoi
.......

SEE ALSO
       atof(3), strtod(3), strtol(3), strtoul(3)
.......


Чем strto*** не устраивает?...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "преобразование int в строку"  
Сообщение от sandy email(??) on 14-Янв-07, 14:43 
>подскажите, как преобразовать тип int в строку. Функцию для преобразования строки в
>int нашел - atoi... а вот обратно не нашел...

man itoa

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "преобразование int в строку"  
Сообщение от Michelnok (ok) on 14-Янв-07, 16:50 
>man itoa

$ man itoa
No manual entry for itoa
$ uname
Linux
$

Так что все же лучше s(n)printf, он есть везде :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру