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

Парсер массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Откорректировать программу http://www.cyberforum.ru/cpp-beginners/thread218114.html
Пожалуйста, переделайте программу, чтобы использовалась адресная арифметика , как я понял работа с указателями(*) Вот сам код: #include <stdio.h> #include <conio.h> #include <locale.h> void...
C++ удаление файлов по маске необходимо удалить все *.txt файлы из директории D:\\ я нашел в инете код но у меня он не запускается может кто скажет что не так #include <windows.h> #include <iostream.h> void main() { ... http://www.cyberforum.ru/cpp-beginners/thread218113.html
C++ Сортировка четных/нечетных элементов массива
В одномерном массиве состоящем из n вещественных элементов вычислить 1)... 2)... 3)упорядочить по возрастанию отдельно элементы стоящие на четных,отдельно на нечетных местах вот такая...
создание html C++
народ подскажите пожалуесто как создать с помощью borland c++ html докумен со следующим текстом (код с++ не нужно вводить в html т.е что выведет на экран программа то и нужно поместить в документ)...
C++ Подсчет количества символов http://www.cyberforum.ru/cpp-beginners/thread218096.html
Доброго времени суток всем! помогите,пожалуйста,решить задачу: Программа должна подсчитывать количество символов в заданном текстовом файле input.txt Вроде бы есть схожие по условию задания,но...
C++ строка задом на перед задание : . Напишите функцию, создающую новую строку, в которой все слова из старой строки следуют в обратном порядке и разделены одним знаком пробела. функция: void reverse (char *str1,char... подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
22.12.2010, 19:01
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <stdio.h>
#include <stdlib.h>
 
#define BUFFSIZE 80
#define MAXNUMCNT 20
 
int* getNumbers(char*, int*, size_t, size_t*);
 
int main()
{
    char buf[BUFFSIZE + 1];
    int  nums[MAXNUMCNT];
    size_t cnt;
    puts("Введите строку чисел");
    fgets(buf, BUFFSIZE, stdin);
    getNumbers(buf, nums, MAXNUMCNT, &cnt);
    for(size_t i = 0; i < cnt; ++i)
        printf("nums[%02u] = %d\n", i + 1, nums[i]); 
    return 0;
}
 
/* Функция будет разбирать строку str и разбивать ее на числа
 * которые будут храниться в массиве numbers, но не больше, чем
 * size чисел. Если указатель cnt не указывает на NULL, то в нем
 * возвращается количество распарсенных чисел
 * Строка разрушается
 */ 
int* getNumbers(char* str, int* numbers, size_t size, size_t* cnt)
{
    size_t n = 0;
    char *p = str;
    char *q = str;
    
    while(*q && (n <= size))
    {
        if(*q == '|')
        {
            *q++ = '\0';
            numbers[n++] = atoi(p);
            p = q;
        }
        else
            ++q;
    }
    
    if(n < size)
        numbers[n++] = atoi(p);
    
    if(cnt)
        *cnt = n;
        
    return numbers;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru