The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Microsoft открыл CHERIoT, аппаратное решение для повышения безопасности кода на языке Си"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Microsoft открыл CHERIoT, аппаратное решение для повышения б..." +/
Сообщение от Совершенно другой аноним (?), 07-Мрт-23, 17:03 
> #include <stdio.h>
> #include <inttypes.h>
> int main(){
> uint8_t a=255,b=255;
> uint8_t c;
> c=a+b;
> printf("%d\n",c);
> И здесь я Явно указал значения операндов. Компилятор GCC даже не предупредил.

#include <stdio.h>

int main(int argc, char* argv[])
{
  unsigned char a = 255, b = 255, c;

  if (__builtin_add_overflow(a, b, &c) == 0)
    printf("%d\n", c);
  else
    printf("owerflow\n");

  a = 254;
  b = 1;

  if (__builtin_add_overflow(a, b, &c) == 0)
    printf("%d\n", c);
  else
    printf("owerflow\n");

  a = 255;
  b = 1;

  if (__builtin_add_overflow(a, b, &c) == 0)
    printf("%d\n", c);
  else
    printf("owerflow\n");

  return 0;
}

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Microsoft открыл CHERIoT, аппаратное решение для повышения безопасности кода на языке Си, opennews, 01-Мрт-23, 10:12  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру