«c» 태그된 질문

C는 운영 체제, 게임 및 기타 고성능 작업에 사용되는 범용 컴퓨터 프로그래밍 언어입니다.

16
오늘날 소프트웨어 프로젝트에 C를 사용 하시겠습니까? [닫은]
휴무 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 그렇다면 어디에서 왜 사용 하시겠습니까? 그렇지 않은 경우 C가 왜 귀하에게 허용되지 않는지 설명하십시오.

6
학생들에게 alloca를 가르쳐야합니까? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 육년 전 . alloca현실에서 얼마나 널리 사용 됩니까? 학생들에게 alloca이해가되었을 때 사용하도록 가르쳐야 합니까? 아니면 절대 사용하지 말라고 가르쳐야합니까? C ++ …
18 c  teaching 

6
더 긴 "열"코드를 위해 더 짧은 변수 이름을 희생합니까?
나는 적절한 프로그래밍 기술을 배우려고 노력하는 CS 수업의 아마추어 프로그래머입니다. 이것은 내 코드가 어떻게 보이는지, 가장자리는 103 열로 확장됩니다. int extractMessage(char keyWord[25], char cipherText[17424], int rowSize, char message[388]) { int keyColumn = 0; int cipherColumn = 0; int offset = 1; int nextWord = 1; int lengthOfWord = 0; int …
17 c  coding-style 

2
인접한 문자열 리터럴 연결
C 및 C ++는 인접한 문자열 리터럴을 단일 문자열 리터럴로 컴파일합니다. 예를 들면 다음과 같습니다. "Some text..." "and more text" 다음과 같습니다. "Some text...and more text" C # 또는 Java와 같은 다른 C 계열 언어에서는 구문 오류입니다 (BTW는 완벽하게 좋습니다). C와 C ++가 이것을하는 근거 / 역사적 이유는 무엇입니까?

4
표준을 따르고 그 문제에 대해 C 표준을 취해야합니까?
Stack Overflow에는 항상 C 표준에 대해 이야기하는 경험 많은 사람들이 있습니다. 사람들은 나를 위해 일하더라도 휴대용이 아닌 솔루션을 좋아하지 않는 것 같습니다. 좋아, 나는 표준을 따라야하지만 프로그래머의 창의력에 걸쇠를 두지 않습니까? 표준을 준수함으로써 얻을 수있는 구체적인 이점은 무엇입니까? 특히 컴파일러는 표준을 약간 다르게 구현할 수 있습니다.

7
정적 분석의 함정을 피하는 방법
나는 적어도 종이에서 Joel Test에서 11 점을받는 회사에서 일하고 있습니다. 그러나 실제로는 예상 한 것만 큼 효과가 없으며 프로젝트는 반년 동안 DEFCON 1 에있었습니다. 자, 대부분의 동료들은 일요일 오후 6시에 집으로 돌아갈 수 있다면 행복합니다. 작동하지 않는 것으로 충격을받은 명백한 모범 사례 중 하나는 정적 분석 도구를 사용하는 것입니다. 이 …

8
임베디드 장치에서 TDD를 어떻게 수행합니까?
나는 프로그래밍에 익숙하지 않고 AVR에서 일부 저수준 C 및 ASM과 함께 일했지만 실제로 대규모 임베디드 C 프로젝트를 할 수는 없습니다. Ruby의 TDD / BDD 철학에 의해 퇴보되어 사람들이 이와 같은 코드를 작성하고 테스트하는 방법을 이해할 수 없습니다. 나는 그것이 나쁜 코드라고 말하지 않고, 이것이 어떻게 작동하는지 이해하지 못합니다. 나는 저수준 …

6
포트란 컴파일러는 실제로 C 컴파일러보다 더 빠른 코드를 생성합니까?
대학에서 공부할 때 종종 포트란 컴파일러가 동등한 프로그램을 위해 C 컴파일러보다 빠른 코드를 생성한다는 생각을 들었습니다. 핵심 이유는 다음과 같습니다. Fortran 컴파일러는 코드 라인 당 평균 1,1 개의 프로세서 명령어를 생성하는 반면 C 컴파일러는 코드 라인 당 평균 1,6 개의 프로세서 명령어를 생성 합니다. 정확한 숫자는 기억 나지 않지만 아이디어는 …

2
Linux / BSD에 일반 배치 syscall이없는 이유는 무엇입니까?
배경: 시스템 호출 오버 헤드는 주로 사용자 공간에서 커널 공간으로의 컨텍스트 전환 및 그에 따른 컨텍스트 호출로 인해 함수 호출 오버 헤드 (20-100x로 추정)보다 훨씬 큽니다. 함수 호출 오버 헤드를 절약하기 위해 함수를 인라인하는 것이 일반적이며 함수 호출은 syscall보다 훨씬 저렴합니다. 개발자가 한 시스템 호출에서 가능한 한 많은 커널 내부 …

2
포인터 인수를 사용하여 C ++ 메서드를 C 함수로 변환 할 수 있습니까?
ESP-32에서 C ++을 사용합니다. 타이머를 등록 할 때 다음을 수행해야합니다. timer_args.callback = reinterpret_cast<esp_timer_cb_t>(&SoundMixer::soundCallback); timer_args.arg = this; 여기 타이머가 호출합니다 soundCallback. 작업을 등록 할 때도 마찬가지입니다. xTaskCreate(reinterpret_cast<TaskFunction_t>(&SoundProviderTask::taskProviderCode), "SProvTask", stackSize, this, 10, &taskHandle); 따라서이 방법은 분리 된 작업에서 시작됩니다. GCC는 항상 이러한 전환에 대해 경고하지만 계획대로 작동합니다. 프로덕션 코드에서 허용됩니까? 더 좋은 …
16 c++  c  functions 

4
어셈블리에서 머신 코드로 이동하는 방법 (코드 생성)
코드를 기계 코드로 조립하는 단계를 시각화하는 쉬운 방법이 있습니까? 예를 들어 메모장에서 이진 파일을 열면 텍스트 형식의 기계 코드 표현이 나타납니다. 나는 당신이 보는 각 바이트 (기호)가 이진 값에 해당하는 ASCII 문자라고 가정합니까? 그러나 어셈블리에서 바이너리로 어떻게 이동합니까?

2
현대 C ++ 패러다임에 대한 최고의 개요? [닫은]
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 저는 8 년에서 10 년 전에 C ++을 광범위하게 작성했습니다. 나는 전문적인 이유로 C #으로 옮겼습니다. 그러나 때때로 나는 다음과 같은 …

8
C ++을 사용하지만 언어의 특정 기능을 사용하지 않는 경우 C로 전환해야합니까?
나는 자유 시간에 취미로 NES 에뮬레이터를 개발 중입니다. 나는 주로 사용하는 언어이기 때문에 C ++을 사용한다. 그러나 이제 프로젝트에 약간의 발전을 가졌으므로 C ++의 거의 모든 특정 기능을 사용하지 않으며 일반 C에서 동일한 결과를 얻을 수 있습니다. 템플릿, 연산자 오버로드, 다형성, 상속을 사용하지 않습니다. 그래서 뭐라고 하시겠습니까? C ++로 유지하거나 …
16 c++  c 

5
배열, 포인터 및 함수에 대한 C 구문이 이런 식으로 설계된 이유는 무엇입니까?
비슷한 질문을 많이 본 후에는 int (*f)(int (*a)[5])C의 의미는 무엇입니까 ? 사람들이 C 구문을 이해하는 데 도움이 되는 프로그램 을 만들었을 때조차도 도움이 될 수는 없지만 궁금합니다. C의 구문이 이런 식으로 설계된 이유는 무엇입니까? 예를 들어, 포인터를 디자인하는 경우 "10 요소 배열의 포인터에 대한 포인터"를 다음과 같이 변환합니다. int*[10]* p; …
16 c  syntax 

4
C에서 짧고 int이며 오래 발명 된 이유는 무엇입니까?
인식하지 못했습니다 정확한을 만드는 목적으로 무엇인가 short, int그리고 longC의 데이터 유형은? 나는 그 크기가 묶여있는 것처럼, 그것은하지 않는 것입니다 물어 이유 - 그들은 어떤 크기의 수는 너무 오래 같은 short보다 작은 int예를 들어,. 있는 상황은, 다음, 당신은을 사용한다 unsigned int또는 unsigned long대신에, 예를 들어, size_t바이너리 호환성을 제공하므로 희망을 수행하지 않을 …
16 c  data-types 

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.