Cで文字列を空にする - RとLinuxと...

RとLinuxと...


Cで文字列を空にする

Programming

ここより引用.

#include<string.h>
void *memset(void *s, int c, size_t n);

sは、unsigned char *型にキャストされ、cは、unsigned char型にキャストされる。

利用例

文字列を空にする際、以下の様に実装するのは誤りである。

#include<stdio.h>
#include<string.h>

...
char *s;
...    /* 適当にsを使う */
 
strcpy(s, NULL); /* 誤り */

文字列を空にする際は、memsetを用いて以下の様に実装するのが正しい。

#include<stdio.h>
#include<string.h>

char *s;
...    /* 適当にsを使う */

memset(s, 0, strlen(s));
 
Link: Programming(3184d) Programming_C(3635d)
Last-modified: 2008-01-17 (木) 11:44:26 (4143d)