반응형

C 31

C#에서 C/inline 어셈블리 사용

C#에서 C/inline 어셈블리 사용 C# 앱에서 인라인 asm (C++ 코드가 아님)과 혼합된 C 소스를 사용하는 방법이 있습니까?C# 앱과 함께 C/asm을 DLL로 컴파일해야 한다면, 저는 그것이 어떻게 이루어지는지에 대해 까다롭지 않습니다.C# 내부에 조립을 사용할 수 있는 규정이 없다는 것을 알고 있기 때문에 이 질문을 합니다. 통합하려는 내용의 샘플 코드: SomeFunc(unsigned char *outputData, unsigned char *inputData, unsigned long inputDataLength) { _asm { //Assembly code that processes inputData and stores result in outputData } } 해당 함수가 선언되기..

programing 2023.10.22

JNI - "'jni_md' 포함 파일을 열 수 없습니다.h'"

JNI - "'jni_md' 포함 파일을 열 수 없습니다.h'" 이 샘플 프로그램은 A를 호출하기 위한 것입니다.nativeC로 표기하는 방법. 자바 코드 class HelloWorld { private native void print(); public static void main( String args[] ) { new HelloWorld().print(); } static { System.loadLibrary("HelloWorld"); } } 이 글을 쓴 후에 나는 프로그램을 컴파일하고 생성했습니다.JNIstyle 헤더 파일. 생성된 헤더 파일은 다음과 같습니다. /* DO NOT EDIT THIS FILE - it is machine generated */ #include /* Header for..

programing 2023.10.17

C에서 (char)0과 '\0'의 차이점은 무엇입니까?

C에서 (char)0과 '\0'의 차이점은 무엇입니까? 사용할 때의 차이점은 무엇입니까?(char)0그리고.'\0'문자 배열에서 끝맺음 Null 문자를 나타내는 것?둘 다 0이지만,(char) 0차인 반면에'\0'는 (unint적으로).int. 값이 0인 경우 이 유형 차이가 일반적으로 프로그램에 영향을 주지 않습니다. 나는 더좋아요'\0', 그것은 그것을 위해 의도된 상수이기 때문입니다.문자 리터럴의 백슬래시 표기를 사용하면 문자 자체를 사용하는 대신 문자의 숫자 값을 지정할 수 있습니다. 그래서'\1'[*]는 "숫자 값이 1인 문자"를 의미하며,'\2'"숫자 값이 2인 문자" 등을 의미합니다.거의.C의 괴상함으로 인해 캐릭터 리터럴은 실제로 유형을 갖습니다.int, 그리고 정말로int반환 값과 같은 ..

programing 2023.10.17

구성원이 1명이면 구조와 조합에 차이가 있습니까?

구성원이 1명이면 구조와 조합에 차이가 있습니까? 하나의 회원 데이터 타입에 대한 구조와 조합의 차이가 있다면 알고 싶습니다.C: 없음.유명한 "공간 절약 농담"#define struct union거의 장난이 아닙니다. C++98: 조합은 POD 구성원만 가질 수 있고, 비조합 클래스는 임의 구성원만 가질 수 있습니다. C++11: 유니언은 객체 유형(참조 유형은 아님)의 임의 데이터 멤버를 가질 수 있지만, 비유니언 클래스의 경우보다 사용이 더 제한됩니다.(이름: 조합은 가상 멤버 기능을 가질 수 없으며 기본 클래스가 될 수 없으며 기본 클래스를 가질 수 없습니다.)또한, 건설자와 파괴자를 직접 작성해야 하기 때문에 비조합원 1인 수업이 아닌 1인 조합이 작동하도록 하기 위해서는 더 많은 코드를 작성해..

programing 2023.10.17

Clion에서 .h 파일에 대한 함수 헤더를 자동으로 생성하는 방법은?

Clion에서 .h 파일에 대한 함수 헤더를 자동으로 생성하는 방법은? C에서 라이브러리를 작성할 때는 보통 함수를 해당 헤더 파일에 정의하기 전에 구현하게 됩니다.헤더 파일에 함수 헤더를 복사하는 것은 반복 작업이기 때문에 CLion에서 함수 헤더(또는 전체 헤더 파일)를 자동으로 생성할 수 있는지 궁금합니다.조금 늦었을 수도 있지만(약 4년), 제가 찾은 가장 좋은 방법은 다음과 같습니다(c파일). .h 파일에 .c의 내용을 잘라 붙여넣고, 각 기능에 대해 이름에 커서를 놓고 Alt+Enter를 누른 후 "Split function in the declaration and definition"을 선택합니다. 이것은 구현을 .c 파일로 이동하는 동안 선언을 .h 파일에 유지할 것입니다. 누군가에게 도움..

programing 2023.10.17

C에서 현재 프로세스의 메모리 사용량

C에서 현재 프로세스의 메모리 사용량 C에서 현재 공정의 메모리 사용량을 파악해야 합니다.리눅스 플랫폼에서 이 작업을 수행하는 방법에 대한 코드 샘플을 제공해 줄 수 있는 사람이 있습니까? 나는 알고 있습니다.cat /proc//status메모리 사용량을 구하는 방법인데 C에서 캡처하는 방법을 모르겠어요. 그건 그렇고, 내가 수정하는 PHP 확장을 위한 것입니다. (물론, 나는 초보입니다.).PHP 확장 API 내에 이용 가능한 단축키가 있다면 더욱 도움이 될 것입니다.그getrusagelibrary 함수는 다음을 포함하여 현재 프로세스에 대한 많은 데이터를 포함하는 구조를 반환합니다. long ru_ixrss; /* integral shared memory size */ long ru_idrss; /*..

programing 2023.10.12

MIPS 어셈블리 언어의 "move"와 "li"의 차이

MIPS 어셈블리 언어의 "move"와 "li"의 차이 C 코드를 MIPS 어셈블리 언어로 변환하는 연습을 하고 있었는데, 사용법을 이해하는 데 어려움을 겪고 있습니다.move그리고.li가변적인 임무 수행 중입니다. 예를 들어, MIPS에서 다음 C 라인을 구현하는 경우: int x = 0; 제가 정확하게 이해했다면(그러나 이는 매우 의심스럽습니다), MIPS 어셈블러에서 다음 두 가지가 모두 작동하는 것처럼 보입니다. move $s0, $zero li $s0, $zero 내가 틀렸나요?이 두 줄의 차이점은 무엇입니까?그move명령어는 한 레지스터에서 다른 레지스터로 값을 복사합니다. 그li명령어는 해당 레지스터에 특정 숫자 값을 로드합니다. 특정한 0의 경우 상수 0 또는 영 레지스터를 사용하여 다음을..

programing 2023.10.07

getaddrinfo()는 DNS 조회를 어떻게 합니까?

getaddrinfo()는 DNS 조회를 어떻게 합니까? getaddrinfo() 는 소켓을 생성하고 연결하기 전에 사용해야 하는 기능입니다(즉, 호출).socket()그리고.connect()어떻게 하는 것입니까?getaddrinfo()처음부터 DNS 서버와 통신을 합니까? 의 완전한 출처를 어디서 볼 수 있습니까?getaddrinfo()?짧은 대답은 "시스템에 묻습니다"이며, 이는 다시 DNS 조회 방법과 사용할 서버를 알고 있습니다. getaddrinfo()에 의해 문서화되어 있습니다.getaddrinfo(3)C 라이브러리 기능이라는 뜻의 수동 페이지입니다.또한 POSIX 기능이므로 표준 "소스"가 없습니다. POSIX를 준수하는 운영 체제의 각 표준 C 라이브러리는 자체 버전을 구현합니다.어느 쪽이..

programing 2023.10.02

C 언어로 도/라디안을 계산하는 기능이 있습니까?

C 언어로 도/라디안을 계산하는 기능이 있습니까? C 프로그램에서 각도를 계산해야 합니다.여기 제가 C로 변환해야 하는 자바의 방법이 있습니다. private static double calculateDirection(double x, double y) { return Math.toDegrees(Math.atan2(y, x)); } 코드를 다 혼자 쓰지 않아도 되도록 C언어로 학위 같은 기능이 있나요?감사해요.#include inline double to_degrees(double radians) { return radians * (180.0 / M_PI); } 그런 방법을 쓸 필요는 없습니다.학위로 변환하는 것은 매우 간단합니다. double radians = 2.0; double degrees = r..

programing 2023.10.02
반응형