Лучшее объяснение, которое я нашел, Mike Acton, Понимающее Строгое Искажение . Это сфокусировалось немного на разработке PS3, но это - в основном просто GCC.
От статьи:
"Строгое искажение является предположением, сделанным C (или C++) компилятор, то разыменование, которое указатели на объекты различных типов никогда не будут отсылать к той же ячейке памяти (т.е. искажать друг друга.)"
Так в основном, если Вы имеете int*
указывающий на некоторую память, содержащую int
и затем Вы указываете float*
на ту память и используете ее в качестве float
, Вы нарушаете правило. Если Ваш код не будет уважать это, то оптимизатор компилятора, скорее всего, повредит Ваш код.
исключение из правила char*
, которому позволяют указать на любой тип.
/srv
принадлежит root
по умолчанию, поэтому необходимо получить полномочия пользователя root отредактировать его или добавить файлы к нему.
можно выполнить команду с полномочиями пользователя root предварительное ожидание sudo
к нему:
[timwolla@/srv]ls -al
total 8
drwxr-xr-x 2 root root 4096 Oct 17 2012 .
drwxr-xr-x 25 root root 4096 Mar 18 16:20 ..
[timwolla@/srv]mkdir test
mkdir: cannot create directory ‘test’: Permission denied
[timwolla@/srv]sudo mkdir test
[sudo] password for timwolla:
[timwolla@/srv]ls -al
total 12
drwxr-xr-x 3 root root 4096 Mar 26 20:20 .
drwxr-xr-x 25 root root 4096 Mar 18 16:20 ..
drwxr-xr-x 2 root root 4096 Mar 26 20:20 test
gksudo
для запуска графической программы с полномочиями пользователя root. Файловый менеджер называютnautilus
. – jezrael 17.05.2020, 21:09