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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.62
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
#1

Какой код у тире? - C++

12.04.2013, 20:39. Просмотров 1679. Ответов 40
Метки нет (Все метки)

Которое
HTML5
1
–
.
C++
1
'\n'
- другой символ.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.04.2013, 20:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Какой код у тире? (C++):

какой код - C++
Какой код на такую программу: слева должно быть 2 кнопки. Выбрать, и отмена. Когда НАВОДИШЬ на выбрать,слева,пишут краткое описание,и когда...

Посмотрите какой код - C++
необходимо написать альтернативу этому коду #include <iostream> #include <locale> #include <time.h> #include <vector> ...

Какой код у символа ` - C++
Который без шифта на копке с тильдой и буквой ё.

Какой код у символа конца текста - C++
Пытаюсь написать лексический анализатор, который считывает текст из файла: if (ch==' '||ch=='\n'||ch=='\t'||ch==',') { ...

Код какой то простой игры в язике С++ - C++
Кто может скиньте пожалуйста код какой то простой игры в язике С++. Пожалуйста.

польская запись,нашел какой то код - C++
char * pol(char * in, char * out) { st *OPR=NULL; int k,point; k=point=0; while(in!='\0' && in!='=') // пока не дойдем до равно...

40
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2013, 21:49  [ТС] #16
C++
1
GetTextExtentPoint32(Context, p, L, &WordSize);
C:\tsserver\Projects\cpp\codeblocks\MyComp\language\aboutmmz\aboutmmz.cpp|148|warning: variable 'Left' set but not used [-Wunused-but-set-variable]|
Добавлено через 38 секунд
Цитата Сообщение от Kastaneda Посмотреть сообщение
это на какую строку ругается? У тебя в коде нет 153 строки.
На
C++
1
LeftText(Context, Left, 64, 0, Right, L"Угловые скобки в данном документе являются метасимволами и означают замену заключённого в них текста конкретным текстом в том и только в том случае, если и сами эти скобки, и текст в них набран синим, чёрный цвет соотвествует обычным символам.", x, y1, y2);
0
Kastaneda
Jesus loves me
Эксперт С++
4689 / 2893 / 236
Регистрация: 12.12.2009
Сообщений: 7,355
Записей в блоге: 2
Завершенные тесты: 1
12.04.2013, 21:51 #17
во первых замени тогда уж GetTextExtentPoint32 на GetTextExtentPoint32W (хотя там IDE сама это разрулить может, но я бы не надеялся).
и у тебя p это wchar_t*, а Word так и осталось std::string.
0
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2013, 21:52  [ТС] #18
Цитата Сообщение от Kastaneda Посмотреть сообщение
если нужно проверить, что символ является печатным, то можно использовать isprint().
Пробельные символы тоже считаются не печатными?
0
Kastaneda
Jesus loves me
Эксперт С++
4689 / 2893 / 236
Регистрация: 12.12.2009
Сообщений: 7,355
Записей в блоге: 2
Завершенные тесты: 1
12.04.2013, 21:55 #19
Цитата Сообщение от taras atavin Посмотреть сообщение
converting to execution character set: Illegal byte sequence|
короче гугл говорит, что тебе нужно настройках проект указать, что ты работаешь с юникодом.
0
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2013, 21:57  [ТС] #20
даблю отловил.
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
135
//=================================================================================================
void                          LeftText                       (HDC                   &Context     ,
                                                              int                    Left        ,
                                                              int                    Red         ,
                                                              int                    Top         ,
                                                              int                    Right       ,
                                                              std::wstring           Text        ,
                                                              int                   &EndX        ,
                                                              int                   &EndY1       ,
                                                              int                   &EndY2       )
{
 int           CharWidth;
 int           CharHeight;
 int           x;
 int           WordRight;
 SIZE          WordSize;
 int           y;
 size_t        L;
 TEXTMETRIC    TextMetrics;
 std::wstring  Word;
 wchar_t      *p;
 GetTextMetrics(Context, &TextMetrics);
 CharWidth=TextMetrics.tmAveCharWidth;
 CharHeight=TextMetrics.tmHeight+TextMetrics.tmExternalLeading;
 for (x=Left+Red, y=Top+CharHeight; !Text.empty(); )
 {
  Word=FirstWord(Text);
  p=(wchar_t *)Word.c_str();
  L=Word.length();
  GetTextExtentPoint32W(Context, p, L, &WordSize);
  WordRight=x+WordSize.cx;
  if (WordRight>=Right)
  {
   x=Left;
   WordRight=x+WordSize.cx;
   y+=CharHeight*3/2;
  }
  TextOutW(Context, x, y, p, L);
  x=WordRight+CharWidth;
 }
 EndX=x;
 EndY1=y-CharHeight;
 EndY2=EndY1+CharHeight*3/2;
}
//=================================================================================================
std::wstring                  FirstWord                      (std::wstring          &Text        )
{
 size_t           i;
 size_t           L;
 unsigned wchar_t c;
 bool             Flag;
 std::wstring     Result;
 for (L=Text.length(), i=0, Result=L"", Flag=false; i<L; ++i)
 {
  c=Text[i];
  if (c<=L' ')
  {
   if (Flag)
   {
    Text.erase(Text.begin(), Text.begin() + i);
    return Result;
   }
   continue;
  }
  Flag=true;
  Result=Result+(wchar_t)c;
 }
 Text=L"";
 return Result;
}
//=================================================================================================
void                          CenterText                     (HDC                   &Context     ,
                                                              int                    Left        ,
                                                              int                    Top         ,
                                                              int                    Right       ,
                                                              std::wstring           Text        ,
                                                              int                   &EndY        )
{
 int           RowWidth;
 int           StringWidth;
 std::wstring  Buffer;
 std::wstring  Word;
 TEXTMETRIC   TextMetrics;
 wchar_t      *p;
 size_t        L;
 size_t        Words;
 int           CharWidth;
 int           CharHeight;
 int           WordRight;
 SIZE          WordSize;
 bool          Flag;
 int           x;
 int           y;
 GetTextMetrics(Context, &TextMetrics);
 CharWidth=TextMetrics.tmAveCharWidth;
 CharHeight=TextMetrics.tmHeight+TextMetrics.tmExternalLeading;
 RowWidth=Right+Left;
 y=Top+CharHeight;
 for (Text; !Text.empty(); )
 {
  for (Flag=false, Buffer=Text, StringWidth=0, Words=0; (StringWidth<RowWidth)&&(!Buffer.empty()); )
  {
   Word=FirstWord(Buffer);
   p=(wchar_t *)Word.c_str();
   L=Word.length();
   GetTextExtentPoint32W(Context, p, L, &WordSize);
   WordRight=StringWidth+WordSize.cx;
   if (Flag)
   {
    WordRight+=CharWidth;
   }
   Flag=true;
   if (WordRight>=RowWidth)
   {
    break;
   }
   StringWidth=WordRight;
   ++Words;
  }
  x=(Left+Right-StringWidth)/2;
  for (; Words>0; --Words)
  {
   Word=FirstWord(Text);
   p=(wchar_t *)Word.c_str();
   L=Word.length();
   GetTextExtentPoint32W(Context, p, L, &WordSize);
   TextOutW(Context, x, y, p, L);
   x+=WordSize.cx;
   x+=CharWidth;
  }
  y+=CharHeight*3/2;
 }
 EndY=y-CharHeight;
}
//=================================================================================================
Но всё равно
C:\tsserver\Projects\cpp\codeblocks\MyComp\language\aboutmmz\aboutmmz.cpp|153|error: converting to execution character set: Illegal byte sequence|
на
C++
1
LeftText(Context, Left, 64, 0, Right, L"Угловые скобки в данном документе являются метасимволами и означают замену заключённого в них текста конкретным текстом в том и только в том случае, если и сами эти скобки, и текст в них набран синим, чёрный цвет соотвествует обычным символам.", x, y1, y2);
.
0
Kastaneda
Jesus loves me
Эксперт С++
4689 / 2893 / 236
Регистрация: 12.12.2009
Сообщений: 7,355
Записей в блоге: 2
Завершенные тесты: 1
12.04.2013, 21:57 #21
Цитата Сообщение от taras atavin Посмотреть сообщение
Пробельные символы тоже считаются не печатными?
пробел да, таб нет.
0
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2013, 21:58  [ТС] #22
Цитата Сообщение от Kastaneda Посмотреть сообщение
короче гугл говорит, что тебе нужно настройках проект указать, что ты работаешь с юникодом.
А как?

Добавлено через 58 секунд
Цитата Сообщение от Kastaneda Посмотреть сообщение
пробел да, таб нет.
А мне надо, чтоб все символы, которые в ASCII имеют коды<=32.
0
Kastaneda
Jesus loves me
Эксперт С++
4689 / 2893 / 236
Регистрация: 12.12.2009
Сообщений: 7,355
Записей в блоге: 2
Завершенные тесты: 1
12.04.2013, 22:05 #23
Цитата Сообщение от taras atavin Посмотреть сообщение
А как?
короче у тебя похоже MinGW, а исходники ты пишешь в CP1251. Как поменять настройки проекта зависит от IDE. Советую в гугл вбить
converting to execution character set: Illegal byte sequence
результатов много, не ты один с этим столкнулся.
Цитата Сообщение от taras atavin Посмотреть сообщение
А мне надо, чтоб все символы, которые в ASCII имеют коды<=32.
если коротко, то как и показывал
C++
1
if (c <= L' ')
если основательно, то посмотри на хедер <cwctype> (wctype.h)
0
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2013, 22:12  [ТС] #24
Цитата Сообщение от Kastaneda Посмотреть сообщение
короче у тебя похоже MinGW, а исходники ты пишешь в CP1251. Как поменять настройки проекта зависит от IDE.
Так от компилятора, или IDE?
0
Kastaneda
Jesus loves me
Эксперт С++
4689 / 2893 / 236
Регистрация: 12.12.2009
Сообщений: 7,355
Записей в блоге: 2
Завершенные тесты: 1
12.04.2013, 22:18 #25
Настройки меняются в IDE, но такая ошибка, судя по результатам гугла, проявлятся только при использовании MinGW.
0
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2013, 22:29  [ТС] #26
Что то по такому запросу не могу найти решения.

Добавлено через 50 секунд
Цитата Сообщение от Kastaneda Посмотреть сообщение
Настройки меняются в IDE, но такая ошибка, судя по результатам гугла, проявлятся только при использовании MinGW.
А чем тогда компилить?
0
Kastaneda
Jesus loves me
Эксперт С++
4689 / 2893 / 236
Регистрация: 12.12.2009
Сообщений: 7,355
Записей в блоге: 2
Завершенные тесты: 1
12.04.2013, 22:31 #27
Цитата Сообщение от taras atavin Посмотреть сообщение
А чем тогда компилить?
Ну проблема то решаемая. Какая IDE?
0
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2013, 22:32  [ТС] #28
codeblocks.
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
12.04.2013, 22:36 #29
Цитата Сообщение от taras atavin Посмотреть сообщение
А как?
Можно компилировать с ключом -DUNICODE (если MinGW)
Но тогда и писать придется под Юникод
0
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2013, 22:38  [ТС] #30
Цитата Сообщение от Croessmah Посмотреть сообщение
-DUNICODE
Куда это писать?
0
12.04.2013, 22:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.04.2013, 22:38
Привет! Вот еще темы с ответами:

Работа с матрицей. Какой необходим код? - C++
Дан двумерный массив размера 3x4. Найти максимальный элемент во второй строке. Вывести на экран максимальный элемент и номера его строки и...

Подключение текстового файла. Какой код - C++
Пожалуйста, помогите написать код на С++ по задаче. -Задача- Дан файл, содержащий зашифрованный русский текст. Каждая буква заменяется...

Сформировать список. Какой будет код к задаче? - C++
Сформировать список L, включив в него по одному разу элементы, которые входят хотя бы в один из списков L1 и L2, но в то же время не входят...

Киньте код какой нибудь простейшей утилиты на С++ - C++
Здравствуйте, очень нужна помощь, мне для проведения пары нужна простейшая утилита для Windows написаная на C++, я всегда просто работал на...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru