配列に文字列を代入する
C言語では、文字列を格納出来る変数(所謂string型)が存在しない。
らしいので、文字列は文字型であるcharの配列として実現するそうだ。
で、配列に文字列を代入するには、strcpy()という関数を使うんだそうな。
#include <stdio.h> #include <string.h> /*コレいつも忘れる*/ int main(void) { char str[20]; strcpy(str, "abcde"); printf("strは%d文字だよ\n", strlen(str)); return 0; } ;; 実行結果 -> strは5文字だよ
あと、'\0'(ヌル文字)を文字列の終端と解釈するらしいので、実際に格納したい文字列+1のサイズを確保するのが必須。
でもって、strlen()はヌル文字をカウントしないらしくて、格納する文字列が確保しているサイズを超えてもチェックはしないらしく云々かんぬん…。
C言語ムズカシイ!!(´Д`|||)
けど面白い!!(*゚▽゚)ノ
普段PHPでいかに楽をさせてもらってるかが身に沁みるな〜。