sprintf 함수는
char dest[100];
sprintf(dest, "TEXT %d", 123); 뭐 이런식으로 쓴다.
strcpy 함수도 자주 쓰긴 하지만, 나는 sprintf가 더 편하게 느껴진다.
특히 이 함수는 문자열 처리가 어려운 C언어에서는 정말 편리한 함수다.
그래서 숫자를 문자로 바꾸기도 하고, 구조체 포인터 변수의 값을 받아서 다른 변수에 저장하는 등의 일을 한다.
sprintf(str, "%.*s", sizeof(a->text), a->text);
일을 하면서 %.*s 라는 표현이 있다는 것을 알게 되었다. 책에서는 못봤던 표현..
프로그래밍이 재밌긴 한데.. 아직 실력이 많이 부족하다.
아마 평생을 배워야 할 지도..
과거에 썼던 글인데
추가로 sscanf 도 있다. 사용법은 sprintf 랑 비슷.
이 링크를 참고하면 좋다.
오랜만에 C언어 짤 일이 생겨, 아래와 같이 코드를 만들어봤다.
#include<stdio.h>
void foo(char *buf, size_t size) {
sprintf(buf, "%.*s", (int)size, "world");
}
int main(void) {
char buf[100] = "hello";
size_t size = sizeof(buf);
foo(buf, size);
printf("%s\n", buf);
return 0;
}
결과는 "world" 가 출력된다.
'Dev > 이전 글' 카테고리의 다른 글
무료로 브랜드 로고를 만들어보자! tailorbrands - Free Logo Maker (0) | 2017.07.04 |
---|---|
외장하드 인식이 안될 때 (0) | 2016.04.17 |
WOL(Wake On Lan), 무선 WAN 기능 - 2 (0) | 2015.06.25 |
WOL(Wake On Lan), 무선 WAN 기능 (0) | 2015.06.01 |
가위바위보, 로또번호 (0) | 2014.03.21 |