2013-05-15 2 views
1

나는 bash에서 간단한 데몬을 작성했다. -/proc/*에도 값을 설정한다. 예를 들어,리눅스 데몬 세트/proc/

echo 50 > /sys/class/backlight/acpi_video0/brightness 

나는 C + + 및 공유에 다시 싶어 -하지만 방법은/proc/*에서 C++를 사용할 수 있나요? 클라이언트로서

답변

3

기억 : Unix에서는 모든 것이 파일입니다 (물론, 거의).

현재 쉘 코드는 실제로 의미 : 이름은 다음 파일 (redirection operator >) (/sys/class/backlight/acpi_video0/brightness)에 값 50 (echo 50) 물품. 그것에

C에서

++, 파일로 열어 /sys/class/backlight/acpi_video0/brightness 읽기/쓰기 원하는 어떤 방법을 사용하여 : C++ fstream, C fopen/fread/fwrite ...

fstream (즉 ofstream 우리가 '이후로 다시 만) 그것을 쓰기 :

std::ofstream file("/sys/class/backlight/acpi_video0/brightness"); 
if (!file.is_open()) 
    throw std::runtime_error("Could not open the file"); 
file << 50; 
file.close(); 
+1

거의 모든 것이 파일과 비슷합니다. :) – Duck

+0

@ 오리 : 하하, 더 잘 말하지 못했습니다. ;) – syam

2

코드 샘플 :

int val = 50; 

FILE *f = fopen("/sys/class/backlight/acpi_video0/brightness", "w"); 
if (!f) 
{ 
    fprintf(stderr, "Huh, couldn't open /sys/class ... "); 
    exit(1); 
} 
fprintf(f, "%d", val); 
fclose(f);