|
Временно недоступен
957 / 228 / 14
Регистрация: 12.04.2009
Сообщений: 926
|
||
Квалификатор указателя restrict: Назначение? Когда применять?19.09.2011, 06:38. Показов 17659. Ответов 25
Сделал поиск по форуму в разделе C/C++ по слову restrict - нашёл информацию крайне скудную. Нашёл только пост от Evg https://www.cyberforum.ru/cpp/... ost1592152, но оттуда как-то не очень понятна общая картина.
Из вики почерпнул данную информацию
Какой у него точный смысл (назначение), и как и когда его использовать?
0
|
||
| 19.09.2011, 06:38 | |
|
Ответы с готовыми решениями:
25
EJB: когда применять и не применять Когда лучше применять структуры, а когда классы? Когда лучше применять исключения? |
|
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
|
||||||||||||
| 20.08.2012, 18:43 | ||||||||||||
|
я собственно долго маялся, писал пост, тесты, примеры оптимизации. Потом понял что получилась непонятная каша и решил просто отослать к стандарту. Грубо говоря квалификатор restrict говорит оптимизатору компилятора что только "рестрикнутый" указатель имеет полноправный доступ к памяти. Иначе undefined behavior. Этот квалификатор относится к оптимизатору. Компиляция с опцией -O3 -S двух одинаковых файлов(за исключением применения квалификатора) дает разный машинный код. Можно проверить на описанной ниже функции void f(int n, int * restrict p, int * restrict q). Не стал постить, т.к. много букв. Оптимизатор имеет право игнорировать квалификатор restrict.
0
|
||||||||||||
|
|
|||
| 20.08.2012, 20:09 | |||
|
0
|
|||
|
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
|
|||
| 20.08.2012, 20:16 | |||
вот описание второго примера
0
|
|||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||||||
| 24.02.2013, 11:21 | |||||||
0
|
|||||||
|
|
||
| 24.02.2013, 12:25 | ||
|
0
|
||
| 24.02.2013, 12:25 | |
|
Помогаю со студенческими работами здесь
26
Bigserial vs. sequence (когда применять)
Когда нельзя применять метод наложения и почему? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов,
содержащихся в реализации модуля. По-умолчанию все члены модуля доступны:
module Foo
let x = 10
let boo () = printfn "boo"
. . .
|
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции.
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible". . .
|
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов.
import "math"
func angleClock(hour int, minutes int) float64 {
. . .
|
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo
https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html
и его же старой инструкции по установке Lazarus с gtk2. . .
|
|
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер.
Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
|
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта
Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
|
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром.
возможно получится прикрутить интерпретатор питон для кастомизации игровой логики.
что есть на текущий момент:. . .
|
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2.
Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
|