«c» 태그된 질문

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

1
임베디드 시스템 프로젝트를 위해 SE 아시아 문자셋을 포함하기위한 절대적, 최소 요구 사항은 무엇입니까?
저는 임베디드 컴퓨터 시스템을 우리가 제조하는 제품에 통합하기 시작한 회사에서 일합니다. 우리는 매우 광범위한 제품을 보유하고 있으며 전 세계에 분포되어 있습니다. 또한 시스템에 플래시 된 펌웨어에 따라 여러 가지 용도로 사용할 수있는 몇 가지 통합 보드를 설계했습니다. 이렇게하면 다양한 제품에 맞게 컴퓨터 하드웨어를 재 설계 할 필요가 없습니다. 특정 제품의 …

3
조건부 컴파일의 바로 가기로 C / C ++ 매크로를 사용하는 것이 좋습니다?
내 코드에 여러 유형의 출력 메시지를 원한다고 가정 해 봅시다. 그중 하나는 DEBUG코드가 디버그 모드에서 컴파일 될 때만 인쇄됩니다. 보통은 다음과 같은 것을 작성해야합니다 #ifdef DEBUG std::cout << "Debug message" << std::endl; #endif 많은 장소에서 사용하기가 번거롭고 성가시다. 코드 스 니펫에 대한 매크로를 정의하는 것이 좋은 방법이므로이 방법으로 사용 하시겠습니까? …
13 c++  c  macros 

4
현대 C를 작성하는 방법에 대해 일반적으로 인정되는 지침이 있습니까?
저는 강력한 Java / Groovy 배경을 가지고 있으며 관리 소프트웨어를 위해 상당히 큰 C 코드 기반을 유지 관리하는 팀에 배정되었습니다. 데이터베이스에서 얼룩을 처리하거나 PDF 및 Excel로 보고서를 생성하는 것과 같은 일부 문제점은 Java 웹 서비스로 외부화되었습니다. 그러나 Java 개발자로서 코드의 일부 측면에서 약간 혼란 스럽습니다. 장황하다 (특히 '예외'를 ​​다룰 때) …
13 c  maintenance 

4
C 구조체는 함수가있는 것처럼 동작 할 수 있습니까?
struct구조체 와 멤버는 가질 수 있지만 함수는 할 수없는 C와 s를 사용 합니다. 이름을 지정한 문자열에 대한 구조체를 만들고 싶습니다. 문자열 의 인덱스 str는 str.replace(int i, char c)어디에서 할 수 i있고 문자열 c위치를 바꾸는 문자 i입니다. 구조체가 함수를 가질 수 없거나 여전히 우리 가이 동작을 구현하고 구조체가 실제로는 새 구조체에 …

4
c로 구조체를 포장하는 표준 방법이나 표준 대안이 있습니까?
CI로 프로그래밍 할 때 GCC __attribute__((__packed__))속성을 사용하여 구조체를 패킹하는 것이 중요하다는 것을 알았 으므로 버스를 통해 전송되거나 스토리지에 저장되거나 레지스터 블록에 적용되도록 휘발성 메모리의 구조화 된 청크를 바이트 배열로 쉽게 변환 할 수 있습니다. 패킹 된 구조체는 바이트 배열로 취급 될 때 패딩을 포함하지 않을 것임을 보장합니다. 패딩은 낭비적이고 보안 …

6
C 배열의 길이가 0이 아닌 이유는 무엇입니까?
C11 표준에 따르면 크기와 가변 길이가 모두 "0보다 큰 값을 갖습니다." 길이가 0을 허용하지 않는 이유는 무엇입니까? 특히 가변 길이 배열의 경우 가끔씩 0의 크기를 갖는 것이 완벽합니다. 또한 정적 배열의 크기가 매크로 또는 빌드 구성 옵션 인 경우에도 유용합니다. 흥미롭게도 GCC (및 clang)는 길이가 0 인 배열을 허용하는 확장을 …
13 c  array 

4
CPU 캐시를 최적화 할 때 무엇이 ​​중요합니까 (C)?
이 두 가지 질문을 읽으면 메모리에서 많은 양의 데이터를 처리 할 때 CPU 캐싱 동작을 이해하는 것이 중요 할 수 있습니다. 캐싱이 작동하여 최적화 도구 상자에 다른 도구를 추가하는 방법을 알고 싶습니다. CPU 캐시가 작동하는 방식에 대한 핵심 요점은 무엇입니까? 그래서 그것을 현명하게 사용하는 코드를 작성할 수 있습니까? 관련하여, 캐시 …

5
오류 확인 및 처리를 개선하려면 어떻게해야합니까?
최근에 나는 올바른 점검이 무엇인지, 그리고 적절한 방법이 무엇인지 이해하기 위해 고심하고 있습니다. 이것에 관한 몇 가지 질문이 있습니다. 오류 (잘못된 입력, 잘못된 상태 등)를 확인하는 올바른 방법은 무엇입니까? 오류를 명시 적으로 확인하거나 최종 코드에서 최적화 할 수있는 assert와 같은 함수를 사용하는 것이 더 낫습니까? 어쨌든 대부분의 상황에서 실행해서는 안되는 …
13 c  testing  assertions 

2
glibc가 GCC와 별도로 유지 관리되는 이유는 무엇입니까?
GCC는 C 컴파일러입니다. Glibc는 C 라이브러리입니다. 그러나 컴파일러와 표준 라이브러리가 C 구현으로 함께 번들로 제공되어야합니까? 예를 들어, C 라이브러리 등 ABI 및 컴파일러 특정 물건을 포함 <limits.h>, <stdint.h>등, 컴파일러와 API 간의 어느 다르다. "주 함수를 호출하는 방법"과 같은 세부 사항은 컴파일러에 따라 다르지만 실제로는 이러한 세부 사항이 libc.soLinux 시스템에서 제공됩니다 …
13 c  gcc 

6
“C로 어셈블러 작성” 더 높은 수준의 언어로 낮은 수준의 언어에 대한 기계 코드 번역기를 작성하는 이유는 무엇입니까?
저의 마이크로 프로세서 수업 강사는 우리에게 과제를 주었고 다음과 같이 말했습니다. "C로 어셈블러 작성" -내 사랑하는 교수 그래서 그것은 나에게 약간 비논리적 인 것처럼 보였다. 내가 틀렸다면 조립 언어는 기계어 코드에서 고급 언어로가는 첫 단계입니다. 나는 C가 Assembly보다 더 높은 수준의 언어라는 것을 의미한다. C로 어셈블러를 작성하는 요점은 무엇입니까? C …

3
음수 부호 값은 어떻게 저장됩니까?
부호있는 정수의 최대 값과 최소값 으로이 비디오 를 보고있었습니다 . 양의 부호있는 값-0000 0001의 예를 들어보십시오. 첫 번째 비트는 숫자가 양수이고 마지막 7 비트는 숫자 자체임을 나타냅니다. 따라서 쉽게 +1로 해석됩니다. 이제 음수 부호 값-1000 0000의 예를 보자 -8입니다. 좋아, 컴퓨터는 첫 번째 비트 때문에 음의 값이라는 것을 이해할 수 …

6
C에서 변수 및 함수에 사용되는 명명 규칙 [닫기]
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 3 년 전 . CI에서 큰 프로젝트를 코딩하는 동안 문제가 발생했습니다. 더 많은 코드를 계속 작성하면 코드를 구성하기가 어려울 때가 있습니다. 프로그램의 다른 부분에 대한 …
13 c  naming 

4
명명 충돌을 피하는 C 프로젝트
중형 C 라이브러리 프로젝트의 함수 명명 규칙에 대한 실용적인 실제 조언을 찾기 위해 고심하고 있습니다. 내 라이브러리 프로젝트는 자체 헤더가있는 몇 개의 모듈과 하위 모듈로 구분되며 OO 스타일을 느슨하게 따릅니다 (모든 함수는 전역을 제외하고 특정 인수를 첫 번째 인수로 사용합니다). 그것은 우리에게 다음과 같은 것을 놓았습니다. MyLib - Foo - …

9
배열 또는 Malloc?
내 응용 프로그램에서 다음 코드를 사용하고 있으며 정상적으로 작동합니다. 그러나 malloc으로 만들거나 그대로 두는 것이 더 좋은지 궁금합니다. function (int len) { char result [len] = some chars; send result over network }
13 c 

8
C 문자열은 항상 null로 종료됩니까, 아니면 플랫폼에 따라 달라 집니까?
지금은 임베디드 시스템으로 작업하고 운영 체제가없는 마이크로 프로세서에서 문자열을 구현하는 방법을 모색하고 있습니다. 지금까지 내가하고있는 일은 NULL로 끝나는 문자 포인터를 가지고 NULL을 끝으로 나타내는 문자열로 취급한다는 아이디어를 사용하는 것입니다. 나는 이것이 매우 일반적이라는 것을 알고 있지만, 항상 이것을 믿을 수 있습니까? 내가 묻는 이유는 언젠가는 실시간 운영 체제를 사용하려고 생각했기 …

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