Методы работы с текстом.
CString sWord = "word";
и обращаюсь к буквам как
dc.TextOut(x, y, sWord[0]);
а в VC7 так не получается, как можно работать с отдельными буквами слова.
т.е. я не хочу разбивать слово на отдельные компоненты типа ... = {"w", "o", "r", "d"};
вот например такой код (точнее просто смысл кода):
CString letter = "w";
for(int i = 0; i<4; i++)
{
if(sWord == letter)
MessagwBox("The letter is enable", "Congratulations!!!", MB_OK);
break;
}
расскажите подробнее пожалуйста, у меня часто такие вопросы возникают, тольком поговорить нескем.
... Вперемешку со смутным желанием откопать ногами тебя и прочих разлагателей родной отчизны.
А у меня нет желания ни надсмехаться, ни оскоблять, ни бить морду кому бы то ни было, если кто-то имеет мнение, отличное от моего. А если ты считаешь фальсификацией материалы на сайте бурана, то можешь его создателям это прямо высказать. Если же тебе не нравится сам факт их публикации, то можешь заявить куда надо о факте идеологической диверсии.
А что касается великой империи, то мне совсем не нравится когда один народ подавляет другие народы.
dinasok51 прав, что не стоит почевать на лаврах, но при этом он совершенно не прав, что нам не чем гордиться и что всё вокруг плохо.
PitxBull прав, что кое в чем мы до сих пор лидируем, не смотря на все трудности, и это большая заслуга людей, которые раюотают с энтузиазмом.
Но он так же не прав выражаясь лозунгами и приуменьшая заслуги людей других стран.
Vasil_v прав, что мы зафлудились не по теме, но он совершенно не прав нецензурно обзываясь.
Поэтому предлагаю, послать его в бан, а остальным помириться и творить на благо человечества, а не конкретного социального строя.
\. А если ты считаешь фальсификацией материалы на сайте бурана, то можешь его создателям это прямо высказать. Если же тебе не нравится сам факт их публикации, то можешь заявить куда надо о факте идеологической диверсии.
хм... вот интересно из каких моих высказываний ты сделал такие странные ( с моей точки зрения ) выводы ? помоему я говорил совершенно о других вещах и тему фальсификации не поднимал даже в мыслях самого заднего плана. :))))[/QUOTE]
А что касается великой империи, то мне совсем не нравится когда один народ подавляет другие народы.
Ну ка попдробнее кого это мы подавляли ?. Во времена СССР я учился в русской школе а через 300 метров стояла точно такая же школа ( в архитектурном плане ) но украинская. Так что утверждение что Украину русифицировали принудительно - наглая ложь. А вот русских сча дейтсвительно подавляют : и на Украине и в странах Прибалтики. Жил во Львове а потому знаю об этом из реальной жизни. То что вытворяли помаранчевые пиндосы этим летом во Львове просто уму непостижимо. Так например русскоговорящих стариков не пускали в общественный транспорт и отказывались обслуживать в магазинах. В школах и др.учебных заведениях просто тупо штампуются зомби которым вбили в голову что говорить на русском языке плохо, и такой нации - русские - вообще не существует - ее выдумали коммунисты. Откровенно воспитываются нацисты. Кто кого угнетает пи... ? А такие как ты им усиленно помогают. Так что я за то что бы бить ногами.
Преобразовать число в строку, т.е. long в CString.
Если ты напишешь так:
int count = -9234;
double d1 = 251.7366;
double d2 = 1234567.7654321;
str.Format("%6d ", count);
str.Format(str + " %8.4f ", d1);
str.Format(str + " %15.7f", d2);
тов результате str = "-9234 251.7366 1234567.7654321".
Ты этого хотел?
Ты этого хотел?
Проблема решилась так:
sprintf_s(s1,"fps=%d",fps);
зато неясно что делать с
unsigned long fps;
CString s;
char s1[200];
LPWSTR s3;
MultiByteToWideChar(CP_ACP,0,s1,-1,s3,15);
Вылетает с Acess Violation, видимо, из-за неинициализированной s3. Как её инициализировать?
если написать s3="123", то компилятор ругается о несовместимости типов.
Если s3=(LPWSTR)"123";
то в s3 оказывается мусор, и всё равно Acess Violation.
Проблема решилась так:
sprintf_s(s1,"fps=%d",fps);
зато неясно что делать с
unsigned long fps;
CString s;
char s1[200];
LPWSTR s3;
MultiByteToWideChar(CP_ACP,0,s1,-1,s3,15);
Вылетает с Acess Violation, видимо, из-за неинициализированной s3. Как её инициализировать?
если написать s3="123", то компилятор ругается о несовместимости типов.
Если s3=(LPWSTR)"123";
то в s3 оказывается мусор, и всё равно Acess Violation.
Обычно конверсия мультибайтовой строки в ее Unicode-эквивалент проходит так:
1. Вызывают MultiByteToWideChar, передавая NULL в параметре pWideCharStr и 0 в параметре cchWideChar.
2. Выделяют блок памяти, достаточный для сохранения преобразованной строки. Его размер получают из предыдущего вызова MultiByteToWideChar.
3. Снова вызывают MultiByteToWideChar, на этот раз передавая адрес выделенного буфера в параметре pWideCharStr, а размер буфера, полученный при первом обращении к этой функции, — в параметре cchWideChar.
4. Работают с полученной строкой.
5. Освобождают блок памяти, занятый Unicode-строкой.
PWSTR s3;
int nLenOfWideCharStr;
nLenOfWideCharStr = MultiByteToWideChar(CP_ACP, 0, s1, -1, NULL, 0);
s3 = HeapAlloc(GetProcessHeap(), 0,
nLenOfWideCharStr * sizeof(WCHAR));
if (s3 == NULL)
return;
MultiByteToWideChar(CP_ACP, 0, s1, -1,
s3, nLenOfWideCharStr);
...
HeapFree(GetProcessHeap(), 0, s3);
Нет мы не проигрывали Третью Мировою холодную войну! Великая Империя СССР, опережала США в полувековой гонке вооружений. Она создала образцы неотразимого оружия. И не русские, а американцы должны были рухнуть от изнурения. Под старой партийно-советской оболочкой зрела новая сила, клокочующая космическими энергиями. В недрах ВПК был накоплен громадный запас фантастических технологий,трудились армии талантливейших людей. Русские могли совершить рывок в новую цивилизацию, перед которой померкло бы "японское чудо".
Мы не знали о том что имели. Дурацкие порядки скрывали от нас все великолепие мощи страны. Запад сделал все что бы убить империю изнутри. Собственные выродившиеся верхи подло ударили нам в спину. Неужели все пропало ? Нет! Русская история еще не кончилась. Мы еще можем создать новую Империю - царство сильных людей и высоких технологий.
Автор - Максим Калашников. Книга - "Битва за небеса". Рекомендую всем книги этой серии.
Истину глаголишь. Надо будет книгу почитать. Блин, в моем родном городе стоит завод-гигант по производству полупроводников "Кварц". Точно знаю, что на весь союз таких заводов было - на пальцах одной руки посчитать, а в Европе, вообще не было. А щас он мирно стоит и практически не работает. Думаю, что если б совок не распался, то за эти 15 лет мы б уже покупали процессоры не фирмы Интел, а своей отечественой. Вместо того, что-б немного изменить приоритеты, партийное руководство развалило союз. С другой стороны, само население виновато. Сказали на референдуме, что желают выйти из союза - теперь имеют...
Как меня достали эти придурки-националисты, которые при упоминании о союзе сразу ставят свой любимый вопрос: "Шо, дешевої ковбаси захотів". Не доходит до них что не в колбасе дело. Что они предложили вместо нтр, и процветания страны? Язык свой триждыпроклятый? И президента?
а меня еще кто-то на форуме убеждал, что наш народ - не самый худший. Нет - народ, самый худший из всех, ибо народ - серая масса, а историю творят единицы.
Но я уже зафлудился. Пора прекращать...
Думаю, что если б совок не распался, то за эти 15 лет мы б уже покупали процессоры не фирмы Интел, а своей отечественой. Вместо того, что-б немного изменить приоритеты, партийное руководство развалило союз.
не покупали бы. продолжал бы он клепать процессоры для оборонки
Как меня достали эти придурки-националисты,
угу
которые при упоминании о союзе сразу ставят свой любимый вопрос: "Шо, дешевої ковбаси захотів". Не доходит до них что не в колбасе дело. Что они предложили вместо нтр, и процветания страны? Язык свой триждыпроклятый? И президента?
а национализм - это психическая болезнь. так что логики ждать не приходится. вот только язык не трогай.
а меня еще кто-то на форуме убеждал, что наш народ - не самый худший. Нет - народ, самый худший из всех, ибо народ - серая масса, а историю творят единицы.
а он и не самый худший. он везде одинаковый. народы различаются индивидуумами ака отдельными личностями, различаются в масштабах социальных слоев. в массе народ везде одинаков.
Проблема решилась так:
sprintf_s(s1,"fps=%d",fps);
зато неясно что делать с
unsigned long fps;
CString s;
char s1[200];
LPWSTR s3;
MultiByteToWideChar(CP_ACP,0,s1,-1,s3,15);
Вылетает с Acess Violation, видимо, из-за неинициализированной s3. Как её инициализировать?
если написать s3="123", то компилятор ругается о несовместимости типов.
Если s3=(LPWSTR)"123";
то в s3 оказывается мусор, и всё равно Acess Violation.
Ни фига вы, ребята, угараете! Зачем прописывать строку как CString и тут же вызывать SetWindowTextW, предназначенную для работы с Unicode? Если уж приспичило вызывать именно SetWindowTextW, а не SetWindowText, вызывающей необходимую функцию в соответствие с текущей системой символов, пропиши #define _UNICODE в основном header'е (stdafx.h). Только вот не поленись тогда s1.Format("%6d %+8.4f %15.7f", count, d1, d2) поменять на s1.Format("%6d %+8.4f %15.7f" L, count, d1, d2) или, что гораздо лучше, на s1.Format(TEXT("%6d %+8.4f %15.7f"), count, d1, d2).
А вот s1.Format(*"%6d %+8.4f %15.7f", count, d1, d2) - это ВООБЩЕ КРУТО. Даже компилятор офигел, когда ему попалось такое выражение, и забыл напрочь о каком-то там несоотвестсвии типов. Даже я не знаю, как интерпретировать *"%6d %+8.4f %15.7f" (ну, вообще-то знаю, но попытки это вычислить делать не собираюсь). А с HeapAlloc и HeapFree не заморачивайся: проще использовать стандартные new и delete[]. Не хочешь из heapa выделять - используй malloc и free.