c- все статьи тега ➜ страница 19


SSE SSE2 и SSE3 для GNU C++

есть ли простой учебник для меня, чтобы получить до скорости в SSE, SSE2 и SSE3 в GNU C++? Как вы можете сделать оптимизацию кода в SSE? ...

Понимание контейнера макросов в ядре Linux

когда я просматривал ядро Linux, я нашел container_of макрос, который определяется следующим образом: #define container_of(ptr, type, member) ({ const typeof( ((type *)0)->member ) *__mptr = (ptr); (type *)( (char *)__mptr - offsetof(type,member) );}) Я понимаю, что делает container_of, но то, что я не понимаю, это последнее предложение, которое (type *)( (char *)__mptr - offsetof(type,member) );}) если мы используем макрос следующим образом: ...

Синтаксис и пример использования Generic в C11

Я слышал, что C11 добавил дженерики. Я погуглил немного, посмотрел на некоторые статьи, понял, что есть новое ключевое слово (_Generic ) и все. Но я не могу понять всего этого. Это что-то вроде дженериков в C# или шаблонов в C++? Может ли кто-нибудь дать мне краткое объяснение определения C11 дженериков, его синтаксиса и простого примера использования? ...

Установка флага std=c99 в GCC

мне было интересно, есть ли какие-либо файлы, в которых я мог бы установить -std=c99 флаг, так что мне не придется устанавливать его для каждой компиляции. Я использую GCC 4.4 на Ubuntu. ...

Как добавить два числа без использования ++ или + или другого арифметического оператора

Как добавить два числа без использования ++ или + или любого другого арифметического оператора? Это был вопрос, заданный давным-давно в одном интервью кампуса. Во всяком случае, сегодня кто-то задал вопрос относительно некоторых бит-манипуляций, и в ответах красивый quide Стэнфорд немного вертится был передан. Я потратил некоторое время на его изучение и подумал, что на самом деле может быть ответ на этот вопрос. Я не знаю, я не мог найти ни одного. Делает ответ существует? ...

Самый быстрый способ вычисления 128-битного целого числа по модулю 64-битного целого числа

у меня есть 128-битное целое число без знака A и 64-битное целое число без знака B. каков самый быстрый способ вычисления A % B - Это (64-разрядный) остаток от деления A на B? Я хочу сделать это на языке C или ассемблере, но мне нужно ориентироваться на 32-разрядную платформу x86. Это, к сожалению, означает, что я не могу воспользоваться поддержкой компилятора для 128-битных целых чисел, а также способностью архитектуры x64 выполнять необходимую операцию в одном инструкция. Edit: Спасибо за о ...

В чем разница между str==NULL и str[0]=='' в C?

Я хочу знать разницу между str == NULL и str[0] == '': int convert_to_float(char *str, double *num) { if ((str == NULL) || (str[0] == '')) return(-1); *num = strtod(str, (char **)NULL); return(0); } Я использую gcc на Linux. ...

В чем разница между нулевым указателем и пустым указателем?

в чем разница между a нулевой указатель и пустой указатель? ...

malloc для структуры и указателя в C

предположим, я хочу определить структуру, представляющую длину вектора и его значения как: struct Vector{ double* x; int n; }; Теперь предположим, что я хочу определить вектор y и выделить для него память. struct Vector *y = (struct Vector*)malloc(sizeof(struct Vector)); мой поиск по интернету показывает, что я должен выделить память для x отдельно. y->x = (double*)malloc(10*sizeof(double)); но, похоже, что я выделяю память для y - >x дважды, один при выделении памяти для ...

Почему extern не будет ссылаться на статическую переменную?

почему extern int n не компилируется при объявлении n (в другом файле) static int n, но работает при заявленных int n? (Оба эти объявления были в области файлов.) в принципе, почему int n в области файла не то же самое, что static int n в той же области? Это только по отношению к Экстерн? Если да, то как насчет extern я пропустил? ...

Увеличение разрешения камеры в OpenCV

в моей программе C / C++, я использую OpenCV для захвата изображения с веб-камеры. Камера (Logitech QuickCam IM) можно захватить в разрешениях 320x240,640x480 и 1280x960. Но, по какой-то странной причине, OpenCV дает мне изображения с разрешением 320x240 только. Вызовы для изменения разрешения с помощью cvSetCaptureProperty () с другими значениями разрешения просто не работают. Как я могу захватить изображения с другими разрешениями, возможными с моей веб-камерой? ...

Присвоение отрицательных чисел беззнаковому int?

на языке программирования C,unsigned int используется только для хранения положительных значений. Однако, когда я запускаю следующий код: unsigned int x = -12; printf("%d", x); выход по-прежнему -12. Я думал, что он должен был распечатать: 12, или я что-то неправильно понял? ...

Недостатки спецификаторами

Я хочу знать недостатки scanf(). на многих сайтах, я читал, что с помощью scanf может вызвать переполнение буфера. В чем причина этого? Есть ли другие недостатки с scanf? ...

Назначение строк массивам символов

Я немного удивлен следующим. Пример 1: char s[100] = "abcd"; // declare and initialize - WORKS Пример 2: char s[100]; // declare s = "hello"; // initalize - DOESN'T WORK ('lvalue required' error) мне интересно, почему второй подход не работает. Кажется естественным, что он должен (он работает с другими типами данных)? Может кто-нибудь объяснить мне логику этого? ...

Как сделать гауссовское размытие изображения без использования встроенных гауссовых функций?

Я хочу размыть свое изображение, используя собственную формулу размытия Гаусса. Я читаю этой, но я не уверен, как реализовать это. Как я могу использовать формулу для определения веса? Я не хочу использовать какие-либо встроенные функции, такие как MATLAB ...

Несовместимость компиляции C vs C++ - не называет тип

Я пытаюсь использовать библиотеку поставщика в сочетании с моим приложением C++. Библиотека в основном основана на C, что обычно не является проблемой с extern "C" вариант, но я столкнулся с проблемой, которую компилятор C++ не принимает. я упростил свой код в следующие файлы примеров. заголовок.h представляет заголовок из библиотеки Supper, main.c / cpp - это мои собственные файлы. Мое реальное приложение-это приложение на C++, поэтому я хочу, чтобы оно работало с main.СРР. заголовок.ч (обр ...