반응형

C 44

부동 소수점 번호의 정확한 값은 어떻게 인쇄합니까?

부동 소수점 번호의 정확한 값은 어떻게 인쇄합니까? 우선, 이것은 부동소수점 초보 질문이 아닙니다.저는 부동소수점 산술(초월함수는 말할 것도 없고)의 결과는 대개 정확하게 표현될 수 없으며, 대부분의 종단 소수는 이진 부동소수점 숫자로 정확하게 표현될 수 없다는 것을 알고 있습니다. 각 즉, 각한부소합와값수점정은동이유확게다항리일하수치니합수리가능합와▁(▁that▁value▁point▁cor,▁eacha다,일)에 정확히 합니다.p/qq는 2)의 거듭제곱이며, 이는 정확한 십진수 표현을 갖습니다. 다음과 같습니다: 표현을 효율적으로 수 요?이 정확한 소수 표현을 효율적으로 찾는 방법은 무엇입니까?sprintf및 유사한 함수는 일반적으로 원래 부동 소수점 값을 고유하게 결정하기 위해 최대 수의 유의한 자릿수까지..

it-source 2023.07.25

매개 변수 이름 생략, C++ 대 C

매개 변수 이름 생략, C++ 대 C C++에서는 어떤 상황에서는 매개 변수의 이름을 생략하는 경향이 있습니다.그런데 C에서 파라미터 이름을 생략했을 때 오류가 발생했습니다. 코드는 다음과 같습니다. void foo(int); //forward-decl, it's OK to omit the parameter's name, in both C++ and C int main() { foo(0); return 0; } void foo(int) //definition in C, it cannot compile with gcc { printf("in foo\n"); } void foo(int) //definition in C++, it can compile with g++ { cout

it-source 2023.07.10

경고: X는 이 기능에서 초기화되지 않은 상태로 사용될 수 있습니다.

경고: X는 이 기능에서 초기화되지 않은 상태로 사용될 수 있습니다. 맞춤형 "벡터" 구조를 작성하고 있습니다.제가 왜 이런 일을 당하는지 이해할 수 없습니다.Warning: "one" may be used uninitialized여기서. 이것은 나의 vector.h 파일입니다. #ifndef VECTOR_H #define VECTOR_H typedef struct Vector{ int a; int b; int c; }Vector; #endif /* VECTOR_ */ 경고는 여기 온라인에서 발생합니다.one->a = 12 #include #include #include #include "vector.h" int main(void){ Vector* one; one->a = 12; one->b = 13; ..

it-source 2023.07.05

어떤 프로그램이 주어진 파일에 C 배열을 생성합니까?

어떤 프로그램이 주어진 파일에 C 배열을 생성합니까? 저는 과거에 어떤 파일이든 가져와서 그 파일을 나타내는 C 배열을 출력으로 생성하는 프로그램을 본 것을 기억합니다. 그것은 경우에 따라 별도의 파일을 배포하지 못하게 할 것입니다.어떤 유닉스/리눅스 프로그램이 그렇게 합니까?xxd -i대용량 파일의 경우 텍스트로 변환한 다음 컴파일러가 다시 구문 분석하도록 하는 것은 비효율적이고 불필요합니다.사용하다objcopy대신: objcopy -I binary -O elf32-i386 stuff stuff.o x86이 아닌 플랫폼의 경우 필요에 따라 출력 아키텍처를 조정합니다.그런 다음 프로그램에 연결하면 다음과 같이 액세스할 수 있습니다. extern char _binary_stuff_start[], _bina..

it-source 2023.06.30

정적 C 라이브러리를 C++ 코드와 연결할 때 "정의되지 않은 참조" 오류 발생

정적 C 라이브러리를 C++ 코드와 연결할 때 "정의되지 않은 참조" 오류 발생 테스트 파일(링크 테스트용)이 있어 오버로드합니다.new/delete내 소유의 오퍼레이터들malloc/free호출된 라이브러리libxmalloc.a하지만 정적 라이브러리를 연결할 때 다음과 같은 "정의되지 않은 참조" 오류가 계속 발생합니다. 이 오류는 다음과 같습니다.test.o그리고.-lxmalloc하지만 모든 것이 이 도서관을 연결하는 다른 C 프로그램과 잘 작동합니다.저는 이 문제에 대해 매우 혼란스럽고 어떤 단서라도 감사합니다. 오류 메시지: g++ -m64 -O3 -I/usr/include/ethos -I/usr/include/nacl/x86_64 -c -o test.o test.cpp g++ -m64 -O3 -L..

it-source 2023.06.20

fgetpos/fsetpos와 ftell/fseeek의 차이점

fgetpos/fsetpos와 ftell/fseeek의 차이점 기능을 사용하는 것과 다른 점은 무엇입니까?fgetpos()그리고.fsetpos()그리고 기능들을 사용합니다.ftell()그리고.fseek()파일에 위치를 지정할 수 있습니까? 무엇이fgetpos()그리고.fsetpos()에 좋습니까?왜 그것들이 대신 사용되었겠습니까?ftell()그리고.fseek()?위의 답변 중 정답이 하나도 없습니다. 실제로 다음을 사용할 수 있습니다.fsetpos와 바꿀 수 없는.fseek보안 결함(https://www.securecoding.cert.org/confluence/pages/viewpage.action?pageId=20087255) )을 도입할 수 있습니다. 그 이유는fpos_t *pos에 대한 주장.fs..

it-source 2023.06.15

C에서 포인터로 2D 배열을 전달하는 방법은 무엇입니까?

C에서 포인터로 2D 배열을 전달하는 방법은 무엇입니까? 저는 C를 배우고 있는데 2D 배열의 포인터를 2D 배열을 인쇄하는 다른 함수로 전달하는 데 어려움을 겪고 있습니다.어떤 도움이라도 주시면 감사하겠습니다. int main( void ){ char array[50][50]; int SIZE; ...call function to fill array... this part works. printarray( array, SIZE ); } void printarray( char **array, int SIZE ){ int i; int j; for( j = 0; j < SIZE; j++ ){ for( i = 0; i < SIZE; i ++){ printf( "%c ", array[j][i] ); } prin..

it-source 2023.06.15

C: 플로트 값을 인쇄합니다.

C: 플로트 값을 인쇄합니다. 쉼표 뒤에 2자리 정수, 10진수 6자리 부동값을 출력하고 싶습니다.그냥 쓰면printf("%f", myFloat)값이 잘립니다. 이것이 항상 C에서 발생하는 것인지 아니면 단지 C를 마이크로컨트롤러(정확히는 CCS)에 사용하고 있기 때문에 발생하는 것인지 알 수 없습니다만, 참조에서는 다음과 같이 되어 있습니다.%f잘려나간 플로트입니다. 만약 내 수레가44.556677인쇄중입니다."44.55"는 처음 두 자리 소수점만 나타냅니다. 그래서 질문은...6자리 숫자(그리고 6자리 숫자만)를 인쇄하려면 어떻게 해야 하나요?다음과 같이 할 수 있습니다. printf("%.6f", myFloat); 6은 소수점 구분 기호 뒤의 자릿수를 나타냅니다.printf("%9.6f", myFl..

it-source 2023.01.15

C/C++로 DLL을 컴파일하여 다른 프로그램에서 호출합니다.

C/C++로 DLL을 컴파일하여 다른 프로그램에서 호출합니다. 함수를 하나 또는 두 개 내보내는 단순하고 간단한 DLL을 만든 다음 다른 프로그램에서 호출하려고 합니다.지금까지 내가 찾아본 모든 곳은 복잡한 문제들, 서로 다른 연결 방법들, 아직 존재조차 깨닫지 못한 이상한 문제들...다음과 같은 방법으로 시작하고 싶습니다. 다음과 같은 함수를 내보내는 DLL을 만듭니다. int add2(int num){ return num + 2; } int mult(int num1, int num2){ int product; product = num1 * num2; return product; } MinGW로 컴파일을 하고 있는데, C++로 컴파일을 하는 것에 실제 차이가 있다면 그것들도 알고 싶습니다.그 DLL을 ..

it-source 2023.01.13

getc() vs fgetc() - 주요 차이점은 무엇입니까?

getc() vs fgetc() - 주요 차이점은 무엇입니까? '거의 똑같다' 이런 걸 보면... GNU C 프로그래밍 튜토리얼에서: GNU C 라이브러리에는 fgetc라는 다른 함수가 있습니다.getc는 일반적으로 매크로 함수로 구현되고 고도로 최적화되므로 대부분의 상황에서 선호된다는 점을 제외하고는 대부분의 점에서 getc와 동일합니다.(표준 입력에서 읽는 상황에서는 getc가 fgetc만큼 빠릅니다.컴퓨터가 입력 내용을 읽을 수 있는 속도에 비해 사람이 입력하는 속도가 느리지만, 사람이 인터랙티브하게 작성하지 않은 스트림에서 읽을 때는 fgetc가 더 나을 수 있습니다.) 다른 차이점은 무엇입니까?각각 다른 실장(매크로로서 사용할 수 있는 것)을 가지고 있다고 들었습니다만, 표준 C 라이브러리(또는..

it-source 2022.12.29
반응형