- 1
- 2
struct Ziga : std::exception {};
throw Ziga();
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+14
struct Ziga : std::exception {};
throw Ziga();
Теперь вы знаете как кинуть зигу в C++ !!
−16
#include <iostream>
#include <string>
using namespace std;
/*
*/
int change_word(const int begin_pos, string &words, int k, char c)
{
int pos = begin_pos;
int char_count = 0;
bool replaced = false;
while(pos < words.length() && isalpha(words[pos]))
{
char_count++;
if(char_count == k && !replaced)
{
words[pos] = c;
replaced = true;
}
pos++;
}
return pos;
}
void change_words(string &words, int k, char c)
{
int i = 0;
while(i < words.length())
{
if(isalpha(words[i]))
{
i = change_word(i, words, k, c);
}
else
{
i++;
}
}
}
int main()
{
char c = '>';
int k = 0;
string words = "Length of the substring to be copied";
cout << "enter number:";
cin >> k;
change_words(words, k, c);
cout << "changed text: " << words << endl;
return 0;
}
лаба на с++, заменить в тексте к-тую букву на символ с.
+12
// Вопрос: как сгенерировать в рантайме предупреждение от компилятора?
// http://stackoverflow.com/q/4187967
void f(int*p = nullptr)
{
if (!p)
{
//HERE I WOULD LIKE TO HAVE AN MSG THAT WOULD BE DISPLAYED DURING COMPILATION AS A WARNING POSSIBLY
}
}
// Ответ: очевидно же, вызвать компилятор для соответствующего кода.
// http://stackoverflow.com/a/4188155
void f(int *p = nullptr) {
if (!p) {
system("gcc -Wall warning.c");
}
}
Каков вопрос - таков ответ.
+64
Товарищи, стоит задача: найти количество слов в строке.
Автор (http://programmersforum.ru/showthread.php?p=1269850#post1269850) просто делит строку по пробелам, затем
подсчитывает кол-во слов.
Я же, говорю, что такой подход НЕПРАВИЛЕН, т.к. в русском
языке (да и не только) слова разделяются символами пунктуации, которые сами в состав слова не входят - следовательно, делить нужно по ним:
[code]" ' . , ! ?: ; - + <пробел> <табуляция> ( )[code]
На меня сразу же наехали и поудаляли мои сообщения. Неужели я не прав?
Баян все еще там: http://programmersforum.ru/showthread.php?p=1269850#post1269850
+15
#include <cstdio>
#include <cstdlib>
#include <fstream>
// #include <cstring>
#include <string>
using namespace std;
string exec = "\"c:\\Program Files (x86)\\GnuWin32\\bin\\wget.exe\"";
string root = "http://techno.org/electronic-music-guide/";
const char* flist = "list.txt";
void getFile(string name)
{
string command = exec + " " + root + name;
system(command.c_str());
}
int main(int argc, char* argv[])
{
ifstream fin(flist);
string name = "";
while(true)
{
if (fin.eof()) break;
getline(fin, name);
getFile(name);
}
return 0;
}
Суть такова: ваш покорный слуга копался в исходниках этого: http://techno.org/electronic-music-guide/ -- ради музыкальных лупов на рингтон. Узнал, что это реализовано swf-модулями, список которых он добыл после объединения кучи скриптов и сортировки в NPP. Осталось лишь найти способ загрузить эти файлы по списку.
Но искать было лень, поэтому реализовано подручными средствами: мозгом, компилятором и случайно попавшимся wget'ом (FTW).
+23
void main()
{
// Откуда в программе баги берутся???
struct ╯°□°{}╯︵┻━┻;
// Понятия не имею.
// Код классный, имена переменных говорят сами за себя...
// Строк комментариев больше, чем строк кода...
// А баги всё-равно есть.
// КАК ЖЕ МЕНЯ ВСЁ ЭТО БЕСИТ!
(╯°□°)╯︵┻━┻;
}
В ответ цитате с баша:
scala самый крутой язык, в нём можно столами кидаться
def ┻━━┻ = {
new Exception("ACHTUNG!")
}
throw ┻━━┻
На С/С++ тоже можно столами кидаться и более красиво! Достаточно сохранение файла в unicode включить.
+11
for(int i = posX-width, numBlock = 0; i < posX+width; i++)
{
for(int j = posY-height; j < posY+height; j++)
{
if(worldInfo[i][j] != air){
switch(worldInfo[i][j])
{
case grass:
for(i = 0; i < 8; i++) tempCoord[numBlock*8+i] = texCoordList[0][i];
break;
case dirt:
for(i = 0; i < 8; i++) tempCoord[numBlock*8+i] = texCoordList[1][i];
break;
case rock:
for(i = 0; i < 8; i++) tempCoord[numBlock*8+i] = texCoordList[2][i];
break;
case water:
if(j != 35)
for(i = 0; i < 8; i++) tempCoord[numBlock*8+i] = texCoordList[3][i];
else
for(i = 0; i < 8; i++) tempCoord[numBlock*8+i] = texCoordList[4][i];
break;
case sand:
for(i = 0; i < 8; i++) tempCoord[numBlock*8+i] = texCoordList[5][i];
break;
}
numBlock++;
}
}
}
Мое. Долго искал причину краша. Нашел. Если в кратце, тот тут идет присваивание текстурных коррдинат. Я оставлю это здесь, приятного аппетита!
+16
void setEnabled(bool enabled)
{
super.setEnabled(enabled)
if (enabled) {
objectsArray.disable();
return;
}
enable();
}
−1
parallel_for(1, 6, [](int value) {
wstringstream ss;
ss << value << L' ';
wcout << ss.str();
});
Вместо того чтобы заняться допиливанием С++11 для студии, макрософт решила написать своё параллельное апи и глупые примерчики к нему на тему вывести случайную перестановку элементов.
+6
#include <iostream>
using std::cout;
using std::endl;
auto power(double x, int n)-> double*;
int main()
{
void * c = power(5,2);
std::cout << *(double*)c << std::endl;
return 0;
}
auto power(double x, int n)-> double*
{
double* result(new double(1.0));
for(int i = 1; i <= n; i++)
*result *= x;
return result;
}