Запитання з тегом «c»

C - мова програмування загального призначення, що використовується для системного програмування (ОС та вбудованих), бібліотек, ігор та крос-платформ. Цей тег слід використовувати із загальними питаннями, що стосуються мови C, визначеної стандартом ISO 9899 (остання версія, 9899: 2018, якщо інше не зазначено - також запити, пов’язані з версією тегів c89, c99, c11 тощо). C відрізняється від C ++, і він не повинен поєднуватися з тегом C ++ без раціональної причини.

3
Друк нульових покажчиків з% p є невизначеною поведінкою?
Це невизначена поведінка для друку нульових покажчиків за допомогою %pспецифікатора перетворення? #include <stdio.h> int main(void) { void *p = NULL; printf("%p", p); return 0; } Питання стосується стандарту С, а не реалізації С.

8
Кілька аргументів функції, викликаних pthread_create ()?
Мені потрібно передати кілька аргументів функції, яку я хотів би викликати в окремому потоці. Я читав, що типовим способом зробити це є визначення структури, передача функції вказівника на неї та розмежування її для аргументів. Однак я не можу змусити це працювати: #include <stdio.h> #include <pthread.h> struct arg_struct { int arg1; …
93 c  pthreads 


16
Найкращі практики для операцій кругового зсуву (обертання) в C ++
Оператори лівого та правого зсуву (<< і >>) вже доступні в C ++. Однак я не міг дізнатись, як я можу виконувати операції кругового зсуву або обертання. Як можна виконувати такі операції, як "Повернути вліво" та "Повернути вправо"? Тут обертається двічі вправо Initial --> 1000 0011 0100 0010 має призвести …

9
Вкладена функція в C
Чи можемо ми мати вкладену функцію в C? Що таке вкладені функції? Якщо вони існують в C, чи відрізняється їх реалізація від компілятора до компілятора?
93 c  function  nested 




3
Неблокуючий вхід / вивід UNIX: O_NONBLOCK проти FIONBIO
У кожному прикладі та обговоренні, яке я зустрічаю в контексті програмування сокетів BSD, здається, що рекомендованим способом встановити дескриптор файлу в неблокуючий режим вводу-виводу є використання O_NONBLOCKпрапора fcntl(), наприклад int flags = fcntl(fd, F_GETFL, 0); fcntl(fd, F_SETFL, flags | O_NONBLOCK); Я займаюся мережевим програмуванням в UNIX більше десяти років і …

10
Значення за замовчуванням у структурі C.
У мене така структура даних: struct foo { int id; int route; int backup_route; int current_route; } і функція update (), яка використовується для запиту змін у ній. оновити (42, dont_care, dont_care, new_route); це дійсно довго, і якщо я додаю щось до структури, я повинен додати 'dont_care' до КОЖНОГО виклику …
92 c  initialization 


30
Алгоритм: ефективний спосіб видалити повторювані цілі числа з масиву
Цю проблему я отримав з інтерв’ю з Microsoft. Враховуючи масив випадкових цілих чисел, напишіть алгоритм на мові C, який видаляє дубльовані числа та повертає унікальні числа у вихідному масиві. Наприклад, вхід: {4, 8, 4, 1, 1, 2, 9} вихід:{4, 8, 1, 2, 9, ?, ?} Одне застереження полягає в тому, …

12
Розміщення зірочки в деклараціях покажчиків
Нещодавно я вирішив, що мені просто потрібно нарешті вивчити C / C ++, і є одна річ, якої я насправді не розумію щодо покажчиків або, точніше, їх визначення. Як щодо цих прикладів: int* test; int *test; int * test; int* test,test2; int *test,test2; int * test,test2; Зараз, наскільки я розумію, …
92 c++  c  pointers  declaration 


6
Як відформатувати рядки за допомогою printf (), щоб отримати рівну довжину на виході?
У мене є дві функції: одна, яка видає такі повідомлення, Starting initialization...а інша перевіряє коди повернення та результати "Ok", "Warning"або "Error". Однак вироблена продукція має різну довжину: Starting initialization...Ok. Checking init scripts...Ok. Як я можу отримати щось подібне: Starting initialization... Ok. Checking init scripts... Ok.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.