vs2015中gets函数报错问题解决

vs2015中gets函数报错问题解决

    • 报错原因
    • 示例代码

报错原因

 vs2015中使用的是C语言的新标准,不支持gets函数,因为gets函数可能会溢出,改用gets_s函数,格式为
 > *gets_s(char* buffer,size)*
 其中buffer是缓冲区名称(一般是字符串变量名),size是缓冲区大小

示例代码

// 统计字符
#include<stdio.h>
#include<string>
char s[100];
char t[100];
int main() {
	while (1) {
		gets_s(s, 100);
		if (s[0] == '#')
			break;
		gets_s(t, 100);
		int ls = strlen(s);
		int lt = strlen(t);
		int ns;
		for (int i = 0; i < ls; i++) {
			ns = 0;
			for (int j = 0; j < lt; j++) {
				if (t[j] == s[i])
					ns++;
			}
			printf("%c %d\n", s[i], ns);
		}
	}
	return 0;
}

你可能感兴趣的:(c++,visual,studio)