Size: a a a

2020 January 06

🦊

🦊fox.cpp in C++ Together 2.0
-lsfmlчтотам
источник

CC

Cool Cooler in C++ Together 2.0
А то за меня IDE делает.
источник

🦊

🦊fox.cpp in C++ Together 2.0
-lsfml-graphics -lsfml-window -lsfml-system
источник

🦊

🦊fox.cpp in C++ Together 2.0
навернае
источник

🦊

🦊fox.cpp in C++ Together 2.0
Cool Cooler
А то за меня IDE делает.
что за IDE
источник

CC

Cool Cooler in C++ Together 2.0
🦊fox.cpp
что за IDE
Code::Blocks
источник

🦊

🦊fox.cpp in C++ Together 2.0
ладно
источник

CC

Cool Cooler in C++ Together 2.0
🦊fox.cpp
-lsfml-graphics -lsfml-window -lsfml-system
Скомпилилось!
источник

🦊

🦊fox.cpp in C++ Together 2.0
Ну я тут тебе уже указал, что у тебя результат вычислений не влезает в uint32.
источник

🦊

🦊fox.cpp in C++ Together 2.0
ubsan тебе сейчас тоже самое скажет
источник

CC

Cool Cooler in C++ Together 2.0
main.cpp:11:39: runtime error: signed integer overflow: 512 * 134217728 cannot be represented in type 'int'
main.cpp:12:38: runtime error: signed integer overflow: 512 * 134217728 cannot be represented in type 'int'
main.cpp:13:26: runtime error: signed integer overflow: 512 * 134217728 cannot be represented in type 'int'
main.cpp:11:44: runtime error: signed integer overflow: -268173312 + -2130706432 cannot be represented in type 'int'
источник

CC

Cool Cooler in C++ Together 2.0
Эх.
источник

CC

Cool Cooler in C++ Together 2.0
🦊fox.cpp
Ну я тут тебе уже указал, что у тебя результат вычислений не влезает в uint32.
А в си по дефолту всё вычисляется в uint32?
источник

🦊

🦊fox.cpp in C++ Together 2.0
По дефолту вычисляется в типах, которые ты указал.
источник

🦊

🦊fox.cpp in C++ Together 2.0
Cool Cooler
My own circle renderer failed like this. Why? Maybe it's becuase some integer overflow? The code is:
sf::Uint8* circle(int r1, int r2, sf::Uint32 inner, sf::Uint32 outer)
{
   sf::Uint8* res = new sf::Uint8[r1 * 2 * r2 * 2 * 4];
   for (int i = 0; i < r1 * 2; i++)
   {
       for (int j = 0; j < r2 * 2; j++)
       {
           ((sf::Uint32*)res)[i * r2 * 2 + j] =
           ((i - r1) * (i - r1) * r2 * r2 +
           (j - r2) * (j - r2) * r1 * r1 <=
           r1 * r1 * r2 * r2) ? inner : outer;
       }
   }
   return res;
}

The call for this function is:
sf::Uint8* pixels = circle(512, 512, 0, -256);
Давай так
источник

EP

Evgeniy Pichuzhkin in C++ Together 2.0
Cool Cooler
My own circle renderer failed like this. Why? Maybe it's becuase some integer overflow? The code is:
sf::Uint8* circle(int r1, int r2, sf::Uint32 inner, sf::Uint32 outer)
{
   sf::Uint8* res = new sf::Uint8[r1 * 2 * r2 * 2 * 4];
   for (int i = 0; i < r1 * 2; i++)
   {
       for (int j = 0; j < r2 * 2; j++)
       {
           ((sf::Uint32*)res)[i * r2 * 2 + j] =
           ((i - r1) * (i - r1) * r2 * r2 +
           (j - r2) * (j - r2) * r1 * r1 <=
           r1 * r1 * r2 * r2) ? inner : outer;
       }
   }
   return res;
}

The call for this function is:
sf::Uint8* pixels = circle(512, 512, 0, -256);
Зачем я это увидел
источник

🦊

🦊fox.cpp in C++ Together 2.0
Cool Cooler
My own circle renderer failed like this. Why? Maybe it's becuase some integer overflow? The code is:
sf::Uint8* circle(int r1, int r2, sf::Uint32 inner, sf::Uint32 outer)
{
   sf::Uint8* res = new sf::Uint8[r1 * 2 * r2 * 2 * 4];
   for (int i = 0; i < r1 * 2; i++)
   {
       for (int j = 0; j < r2 * 2; j++)
       {
           ((sf::Uint32*)res)[i * r2 * 2 + j] =
           ((i - r1) * (i - r1) * r2 * r2 +
           (j - r2) * (j - r2) * r1 * r1 <=
           r1 * r1 * r2 * r2) ? inner : outer;
       }
   }
   return res;
}

The call for this function is:
sf::Uint8* pixels = circle(512, 512, 0, -256);
Типы i, j, r1, r2 на sf::Uint64 поменять
источник

CC

Cool Cooler in C++ Together 2.0
🦊fox.cpp
Типы i, j, r1, r2 на sf::Uint64 поменять
источник

ХЛ

Хороший Лисичко in C++ Together 2.0
Cool Cooler
My own circle renderer failed like this. Why? Maybe it's becuase some integer overflow? The code is:
sf::Uint8* circle(int r1, int r2, sf::Uint32 inner, sf::Uint32 outer)
{
   sf::Uint8* res = new sf::Uint8[r1 * 2 * r2 * 2 * 4];
   for (int i = 0; i < r1 * 2; i++)
   {
       for (int j = 0; j < r2 * 2; j++)
       {
           ((sf::Uint32*)res)[i * r2 * 2 + j] =
           ((i - r1) * (i - r1) * r2 * r2 +
           (j - r2) * (j - r2) * r1 * r1 <=
           r1 * r1 * r2 * r2) ? inner : outer;
       }
   }
   return res;
}

The call for this function is:
sf::Uint8* pixels = circle(512, 512, 0, -256);
Я уехал головой увидев это
источник

CC

Cool Cooler in C++ Together 2.0
Ура!
источник