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

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

14
Як читати рядок з консолі на C?
Який найпростіший спосіб прочитати повний рядок у програмі консолі C Введений текст може мати змінну довжину, і ми не можемо робити жодних припущень щодо його вмісту.
108 c  io  console  stdin 


3
Чому швидкі цілі типи швидше, ніж інші цілі типи?
У ISO / IEC 9899: 2018 (C18) зазначено під 7.20.1.3: 7.20.1.3 Найшвидші цілі числа мінімальної ширини 1 Кожен з наступних типів позначає цілий тип, який, як правило, найшвидший 268) для роботи з усіма цілими типами, які мають принаймні задану ширину. 2 Назва typedef int_fastN_tпозначає найшвидший підписаний цілий тип шириною не …
107 c++  c  performance  types  int 

23
Вивчіть C спочатку, перш ніж вивчити Objective-C [закрито]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …
107 c  objective-c  cocoa 


19
C Визначення макросу для визначення великої ендіанської або малої ендіанській машини?
Чи є макрозначення одного рядка для визначення витривалості машини. Я використовую наступний код, але перетворення його в макрос буде занадто довгим. unsigned char test_endian( void ) { int test_var = 1; unsigned char *test_endian = (unsigned char*)&test_var; return (test_endian[0] == 0); }

12
Чи може цикл 'for' всередині циклу 'for' використовувати те саме ім’я змінної лічильника?
Чи можу я використовувати ту саму змінну лічильника для forциклу всередині forциклу? Або змінні впливатимуть одна на одну? Чи повинен наступний код використовувати іншу змінну для другого циклу, наприклад j, або iдобре? for(int i = 0; i < 10; i++) { for(int i = 0; i < 10; i++) { …
107 c  loops  for-loop  nested 

13
Уникайте зворотних нулів у printf ()
Я постійно натрапляю на специфікатори формату для сімейства функцій printf (). Те, що я хочу, - це можливість друкувати подвійний (або плаваючий) з максимальною заданою кількістю цифр після десяткової крапки. Якщо я використовую: printf("%1.3f", 359.01335); printf("%1.3f", 359.00999); я отримав 359.013 359.010 Замість бажаного 359.013 359.01 Хтось може мені допомогти?
107 c  printf 

7
Різниця між size_t та неподписаним int?
Я так розгублений size_t. Я шукав в Інтернеті і всюди згадував, що size_tце неподписаний тип, тому він може представляти лише негативні значення. Перше моє запитання: якщо він використовується для представлення лише негативних значень, чому б ми не використовували його unsigned intзамість size_t? Мій друге питання полягає в наступному : size_tі …
107 c  types  unsigned 

7
Інструменти для отримання графічного коду виклику функції зображень коду [закрито]
Зачинено. Це питання не відповідає вказівкам щодо переповнення стека . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для переповнення стека. Закрито 3 роки тому . Удосконаліть це питання У мене є великий робочий простір, який містить багато вихідних файлів коду С. Хоча я …
107 c  function  call-graph 

3
Як запобігти оптимізації gcc деяких висловлювань у C?
Для того, щоб зробити сторінку брудною (увімкнувши брудний біт у записі таблиці сторінки), я торкаюся перших байтів сторінки таким чином: pageptr[0] = pageptr[0]; Але на практиці gcc ігнорує заяву шляхом усунення мертвих магазинів. Щоб запобігти оптимізації gcc, я переписую заяву наступним чином: volatile int tmp; tmp = pageptr[0]; pageptr[0] = …
107 c  gcc 

2
Створення макросу C за допомогою ## та __LINE__ (об'єднання лексеми з макросом позиціонування)
Я хочу створити макрос C, який створює функцію з іменем на основі номера рядка. Я думав, що я можу зробити щось на кшталт (реальна функція матиме заяви в дужках): #define UNIQUE static void Unique_##__LINE__(void) {} Я сподівався розширитись на щось на кшталт: static void Unique_23(void) {} Це не працює. За …
107 c  macros  concatenation  token 

6
Як передати визначення макросу з аргументів командного рядка «make» (-D) до вихідного коду C?
Зазвичай я передаю визначення макросу з "make command line" в "makefile", використовуючи параметр: -Dname = значення. Визначення доступне всередині makefile. Я також передаю визначення макросу з "makefile" до "вихідного коду", використовуючи аналогічний варіант компілятора: -Dname = значення (підтримується у багатьох компіляторах). Це визначення доступне у вихідному коді. Що мені зараз …
107 c  macros  makefile 



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