doubleprintf에서 올바른 형식 지정자는 무엇입니까 ? 그것은인가 %f또는 그 것이다 %lf? 나는 그것을 믿지만 %f확실하지 않습니다. 코드 샘플 #include <stdio.h> int main() { double d = 1.4; printf("%lf", d); // Is this wrong? }
#include <stdio.h> int main() { unsigned long long int num = 285212672; //FYI: fits in 29 bits int normalInt = 5; printf("My number is %d bytes wide and its value is %ul. A normal number is %d.\n", sizeof(num), num, normalInt); return 0; } 산출: My number is 8 bytes wide …
unsigned longC로 데이터 유형 을 인쇄하는 방법을 이해할 수 없습니다 . 이 있다고 가정 unsigned_foo하면 unsigned long다음을 시도합니다. printf("%lu\n", unsigned_foo) printf("%du\n", unsigned_foo) printf("%ud\n", unsigned_foo) printf("%ll\n", unsigned_foo) printf("%ld\n", unsigned_foo) printf("%dl\n", unsigned_foo) 그리고 그들 모두는 내가 가지고있는 -123123123것 대신 어떤 종류의 숫자를 인쇄 unsigned long합니다.
내가 읽고있는 책 printf에서 단일 인수 (변환 지정자 없음)가 더 이상 사용되지 않는다고 기록되어 있습니다. 대체하는 것이 좋습니다 printf("Hello World!"); 와 puts("Hello World!"); 또는 printf("%s", "Hello World!"); 누군가가 왜 printf("Hello World!");잘못된 것인지 말해 줄 수 있습니까 ? 책에 취약점이 있다고 기록되어 있습니다. 이 취약점은 무엇입니까?
size_tC에서 유형의 변수를 인쇄하고 싶지만 size_t다른 아키텍처에서 다른 변수 유형으로 별칭이 지정된 것처럼 보입니다 . 예를 들어 한 시스템 (64 비트)에서 다음 코드는 경고를 표시하지 않습니다. size_t size = 1; printf("the size is %ld", size); 하지만 내 다른 컴퓨터 (32 비트)에서 위 코드는 다음과 같은 경고 메시지를 생성합니다. 경고 : …