- 683 名前:デフォルトの名無しさん mailto:sage [2006/07/06(木) 14:51:10 ]
- >>682
おかしくなるのは仕様です。面倒ですが、次のように大きなバッファを用意して、 そこに一旦とりこむ必要があります。配列の大きさよりひとつ少なくしか使えないのは、 最後にヌル文字を入れる必要があるからです。 #include <stdio.h> #include <string.h> int main(void) { char buf[1024]; char gg[22]; char hh[33]; printf("数列入れて>\n"); fgets(buf, sizeof buf, stdin); buf[strlen(buf) - 1] = '\0'; memset(gg, '\0', sizeof gg); strncpy(gg, buf, sizeof gg - 1); printf("数列いれ>\n"); fgets(buf, sizeof buf, stdin); buf[strlen(buf) - 1] = '\0'; memset(hh, '\0', sizeof hh); strncpy(hh, buf, sizeof hh - 1); }
|

|