Вопросы с тегом «c»

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

17
C строго типизирован?
Процитирую Википедию : Два широко используемых языка, поддерживающих многие виды неявного преобразования, - это C и C ++, и иногда утверждается, что это языки со слабой типизацией. Однако другие утверждают, что эти языки налагают достаточно ограничений на то, как могут быть смешаны операнды разных типов, что эти два языка следует …

7
Использование continue в операторе switch
Я хочу перейти от середины switchоператора к оператору цикла в следующем коде: while (something = get_something()) { switch (something) { case A: case B: break; default: // get another something and try again continue; } // do something for a handled something do_something(); } Это действительный способ использования continue? Являются …


5
Что именно означает «Objective-C - это надмножество C более строго, чем C ++»?
Из того, что я там прочитал: Почему Objective-C не очень популярен за пределами сообщества Apple? Objective-C - это надмножество C (на самом деле намного более строго, чем C ++), поэтому проблема обратной совместимости не возникает. Все, что вы можете делать в C, вы можете делать в Objective-C. Быть суперсетом бинарно, …
87 c++  objective-c  c 

10
Почему printf («% f», 0); дать неопределенное поведение?
Заявление printf("%f\n",0.0f); печатает 0. Однако заявление printf("%f\n",0); печатает случайные значения. Я понимаю, что проявляю какое-то неопределенное поведение, но не могу понять почему. Значение с плавающей запятой, в котором все биты равны 0, по-прежнему допустимо floatсо значением 0. floatИ intимеет тот же размер на моей машине (если это вообще актуально). Почему …

19
Простой способ использовать переменные перечислимых типов в качестве строки в C?
Вот что я пытаюсь сделать: typedef enum { ONE, TWO, THREE } Numbers; Я пытаюсь написать функцию, которая будет выполнять случай переключения, подобный следующему: char num_str[10]; int process_numbers_str(Numbers num) { switch(num) { case ONE: case TWO: case THREE: { strcpy(num_str, num); //some way to get the symbolic constant name in …


12
Актуален ли ТЧАР?
Я новичок в программировании для Windows, и после прочтения книги Петцольда мне интересно: это еще хорошая практика , чтобы использовать TCHARтип и _T()функцию , чтобы объявить строки или если я должен просто использовать wchar_tи L""строки в новом коде? Я буду ориентироваться только на Windows 2000 и выше, и мой код …
87 c++  c  windows  unicode  wchar-t 


7
C / C ++: принудительный порядок и выравнивание битовых полей
Я читал, что порядок битовых полей в структуре зависит от платформы. Что если я использую различные параметры упаковки для конкретного компилятора, будут ли эти данные гарантии храниться в правильном порядке по мере их написания? Например: struct Message { unsigned int version : 3; unsigned int type : 1; unsigned int …

15
Какова цель fork ()?
Во многих программах и на страницах руководства Linux я видел код, использующий fork(). Зачем нужно использовать fork()и для чего?
87 c  unix  posix  fork 

8
Как мне вернуть несколько значений из функции в C?
Если у меня есть функция, которая производит результат intи результат string, как мне вернуть их оба из функции? Насколько я могу судить, я могу вернуть только одно значение, что определяется типом, предшествующим имени функции.
87 c  return-value 

5
Почему C и C ++ поддерживают поэлементное присваивание массивов внутри структур, но не в целом?
Я понимаю, что поэлементное присваивание массивов не поддерживается, поэтому следующее не будет работать: int num1[3] = {1,2,3}; int num2[3]; num2 = num1; // "error: invalid array assignment" Я просто принял это как факт, полагая, что цель языка - предоставить открытый фреймворк и позволить пользователю решать, как реализовать что-то вроде копирования …

3
Как использовать glOrtho () в OpenGL?
Я не могу понять, как используется glOrtho. Может кто-нибудь объяснить, для чего он используется? Используется ли он для установки предела диапазона координат xy и z? glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0); Это означает, что диапазон x, y и z составляет от -1 до 1?
87 c++  c  opengl 


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.