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

Русские символы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Подсчёт слов в строке http://www.cyberforum.ru/cpp-beginners/thread258702.html
Помогите пожалуйста, необходимо найти количество повторяющихся слов в строке. Пример вывода в программе: Исходная строка: stroka overclocker stroka overclocker stroka Введите повторяющееся слово: stroka Повторов слова в строке: 3
C++ Чтение с файла Например у меня есть файл со следующим текстом: 4 0 (1) 1 1 (2) 0 2 2 (3) 1 3 4 3 (1) 2 Длина строки может быть разная. В первой строке - всегда 1 символ, его я запишу через: ifstream fin("input.txt"); fin>>a; http://www.cyberforum.ru/cpp-beginners/thread258699.html
Почему компилятор ругается? C++
#include<iostream> #include<stdio.h> #include<conio.h> using namespace std; FILE*fp; struct Computer { char type;
Контейнерные классы C++. C++
Здраствуйте:)Поскажите пожалуйста по нижеприведенному коду, сама не могу разобраться, хотя смотрела в учебниках и по инету не могу найти информацию:( Я выделила красным и синим нужные строки. 1)Зачем нужен class T,выделенный синим? 2)Что означают строки выделенные красным, конструктор что ли, непонятно. Подскажите pls...
C++ Описать структуру Student http://www.cyberforum.ru/cpp-beginners/thread258636.html
#include <iostream> #include <fstream> #include<limits> #define DIM 10 #define NAME 70 using namespace std; struct Application {
C++ Определить, попадает ли точка в круг. Определить попадает ли точка с координатами х,у в круг радиуса r с центром в начале координат. Вывести признак N=1, если точка находится внутри круга, и признак N=0, если точка находится вне круга. Помогите пожалуйста подробнее

Показать сообщение отдельно
WASAW
3 / 3 / 0
Регистрация: 10.11.2009
Сообщений: 102
16.03.2011, 21:23     Русские символы
Подскажите пожалуйста как сделать правильный вывод русского алфавита, так как при выводе выдает иероглифы, есть задавать данные изначально, а не вводить с клавиатуры то все выводится нормально.
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#include "stdafx.h"
#include <iostream>
#include <string.h>
#include <windows.h>
 
using namespace std;
 
 
int main()
{
    setlocale( LC_ALL,"Russian" );
    const int n = 1; //количество записей
    const int m = 15;//длина строки
    //Объявление структуры
    struct data
    {
        int day;
        int month;
        int year;
    };
    struct NOTE 
    {
        char name[m];
        char surname[m];
        char phoneNumber[12];
        data birthday;
    };
    
    struct NOTE person[n];
    struct NOTE temp;
    //заполнение данных
    
    cout << "Введите данные: " << endl;
    
    for (int i = 0; i < n; i++)
    {
        cout << "Введите имя: ";
        cin >> person[i].name; cout << endl;
        cout << "Введите фамилию: ";
        cin >> person[i].surname; cout << endl;
        cout << "Введите номер телефона: ";
        cin >> person[i].phoneNumber; cout << endl;
        cout << "Введите дату рождения: ";
        cin >> person[i].birthday.day >> person[i].birthday.month >> person[i].birthday.year; cout << endl;
    }
 
    //сортировка по алфавиту
    bool output = false;
    // по фамилий
    for (int k = 0; k < n; k++)
    {
        for ( int i = 0; i < (n-1); i++)
        {   
            output = false;
            for ( int j = 0; j < m; j++)
            { 
                if (output)
                {break;}
                
                if (person[i].surname[j] > person[i+1].surname[j] )
                {
                    temp = person[i];
                    person[i] = person[i+1];
                    person[i+1] = temp;
                    output = true;
                }
                else
                {
                    if (person[i].surname[j] == person[i+1].surname[j] )
                    {
                        //сортировка по имени
                        int len1 = strlen(person[i].surname);
                        int len2 = strlen(person[i+1].surname);
                        bool checkName;
                        for (int p = 0; p < len1; p++)
                        {   checkName = false;
                            if ((len1 == len2) && (person[i].surname[p] == person[i+1].surname[p]))
                            {checkName = true;}
                        }
                        if (checkName)
                        {
                            output = false;
                            for ( int j = 0; j < m; j++)
                            { 
                                if (output)
                                {break;}
                                
                                if (person[i].name[j] > person[i+1].name[j] )
                                {
                                    temp = person[i];
                                    person[i] = person[i+1];
                                    person[i+1] = temp;
                                    output = true;
                                }
                                else
                                {
                                    if (person[i].name[j] == person[i+1].name[j] )
                                    {continue;}
                                    else
                                    {
                                        output = true;
                                    }
                                }
                                
                                
                            }
                        }
                        else
                        {
                            continue;
                        }
                    }
                    else
                    {
                        output = true;
                    }
                }
                
                
            }
            
        }
    }
    cout << "       Фамилия: " << "Имя:" << endl;
    for (int i = 0; i < n; i++)
    {
        cout.width(15);
        cout << person[i].name << " " << person[i].surname << endl;
    }
 
    
 
    return 0;
}
и если можно это исправить функцией CharToOem(); то как? так как при таком использование выдает ошибку: error C2664: 'CharToOemW' : cannot convert parameter 1 from 'char [15]' to 'LPCWSTR'
C++
1
CharToOem(person[i].name, person[i].name);
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru