C primer plus中有一个获取指定大小字符串的通用方法,全书出现频率很高,先摘录如下:
/* s_gets.c -- prints characters in rows and columns */
#include <stdio.h>
#include <strings.h>
#define SIZE 3
char * s_gets(char *st, int n);
int main(void)
{
char flower[SIZE];
if (s_gets(flower, SIZE)) {
puts(flower);
} else {
puts("end of file encouted");
}
return 0;
}
char * s_gets(char *st, int n)
{
char * ret_val;
char * find;
ret_val = fgets(st, n, stdin);
if (ret_val)
{
find = strchr(st, '\n');
if (find)
*find = '\0';
else
while (getchar() != '\n')
continue;
}
return ret_val;
}
windows下可以使用codeblock工具进行编译
linux下可以使用gcc进行编译;gcc a.c -o a.out; 执行./a.out 即可对程序进行调试