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

Удаление символа из строки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ First-chance exception at 0x772dd3c1 in wrhg_killer.exe: 0x40010005: Control-C http://www.cyberforum.ru/cpp-beginners/thread234789.html
У меня такая ситуация. Запускаю приложение из своей программы. Запущенное приложение работает до тех пор, пока пользователь из него не выйдет. В приложении прописан выход ctrl-c. Если просто закрывать приложение на крестик, то программа завершается корректно, а если по нажатию ctrl-c, то вываливается сообщение First-chance exception at 0x772dd3c1 in wrhg_killer.exe: 0x40010005: Control-C....
C++ Структура Student Описать структуру с именем Student , содержащую следующие поля -фамилия -номер группы -успеваемость массив из 5 элементов написать программу ввод с клавиатеры данных в массив,состоящих из десяти структур типа Student; записи должны быть упорядочены по возрастанию среднего балла #include <iostream> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread234736.html
Массив C++
Помогите пожалуйста написать массив, который будет выводить все нечётные числа (1,3,5,7,9 и так далее).
Не могу вытащить string из управляемого кода C++
Здравствуйте! столкнулся с проблемой вытаскивания строки из c# в с++... есть код на c# namespace MyInterop { public interface IMyDotNetInterface2 { int Add(int Number1, int Number2);
C++ Загрузка dll: идентификатор не найден http://www.cyberforum.ru/cpp-beginners/thread234701.html
Глобальная задача: нужно сделать программу, работающую с т.н. LCard: ЦАП/АЦП, цепляющуюся на PCI. На сайте производителя есть дрова, в поставке которых идёт и dll: lcomp.dll с основными функциями работы. Я начал писать программу на Visual C++ в MVS 2010. Пробовал подключить библиотеку через "Добавить ссылку". Система говорит, что объект не является допустимой сборкой или компонентом COM....
C++ Покритикуйте код финкции нахождения интеграла typedef double(*tfunc)(double); double integral(double start, end, func f, double dx) { double left, right, result; for (x=start, right=start; right<end; left=right) { right=left+dx; if (right>end) { right=end; подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
 Аватар для Nameless One
5754 / 3403 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
09.08.2011, 11:42     Удаление символа из строки
Fra Dolcino, мой вариант на Си:
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
54
55
56
57
58
59
60
61
62
63
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define SIZE 80
 
typedef int (*Pred)(char);
 
char* copyIf(char* dest, const char* src, Pred p);
int skip_NL_and_backslash(char);
 
int main(int argc, char* argv[])
{
    FILE* src;
    FILE* dst;
 
    char src_buf[SIZE];
    char dst_buf[SIZE];
    
    if(argc != 3)
    fprintf(stderr, "Usage: %s SOURCE DEST\n", *argv), exit(1);
 
    if((src = fopen(argv[1], "r")) == NULL)
    perror(argv[1]), exit(1);
 
    if((dst = fopen(argv[2], "w")) == NULL)
    perror(argv[2]), exit(1);
 
    while(fgets(src_buf, SIZE, src))
    {
    copyIf(dst_buf, src_buf, skip_NL_and_backslash);
 
    if(fputs(dst_buf, dst) == EOF)
        perror(argv[2]), exit(1);
    }
 
    if(ferror(src))
    perror(argv[1]), exit(1);
 
    fclose(src);
    fclose(dst);
    
    exit(0);
}
 
char* copyIf(char* dest, const char* src, Pred p)
{
    char* start = dest;
    
    while(*src)
    {
        if(p(*src))
            *dest++ = *src;
        ++src;
    }
    *dest = '\0';
    return start;
}
 
int skip_NL_and_backslash(char c)
{
    return strchr("\n\r\\", c) == NULL;
}
Пример использования:
Код
[nameless@desktop c]$ cat test.txt
\foo
bar\ baaz
quuz
[nameless@desktop c]$ ./sample test.txt output.txt && cat output.txt
foobar baazquuz[nameless@desktop c]$
 
Текущее время: 02:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru