커널 레벨에서 float나 double의 값....
글쓴이: swhong / 작성시간: 목, 2003/02/27 - 8:17오후
커널 레벨에서 printk()함수로 float나 double의 값을 출력하려 했더니...
문제가 생깁니다.
가령...
.. struct timeval tmp; do_gettimeofday(&tmp); printk("%.6f sec", tmp.tv_sec + tmp.tv_usec /1000000.0 ); ..
이런 코드를 커널의 모듈에 삽입한후 그 모듈이 실행된후, dmesg 명령으로 확인을 해 보면....
%f sec
이런 식으로 나오거든요? 왜 이런건지요....쩝....
짐작이 안가네요....
Forums:
printk랑 printf는 틀리지 않나요?아무래도 sprintf를
printk랑 printf는 틀리지 않나요?
아무래도 sprintf를 이용해서 미리 문자열을 만들어서 출력해야 할 것 같습니다만...
printk가 formatting을 지원한다면 전혀 쓸모없는 이야기 였습니다. ;-)
--
http://renn.sapzilla.org/
printk는 정수 포맷팅만 지원합니다. 그러므로 실수는 못씁니다.
printk는 정수 포맷팅만 지원합니다. 그러므로 실수는 못씁니다.
그럼 고운 하루... sprintf도 커널내에서 쓸 수 있는지는 잘 모르겠네요
그럼 고운 하루.
=========================
CharSyam ^^ --- 고운 하루
=========================
sprintf 커널 모듈에서 사용 가능 합니다....
sprintf 커널 모듈에서 사용 가능 합니다....
from saibi
댓글 달기