我不完全确定您正在寻找什么验证。如果您只是为了验证输入了您要查找的字符类型,Wug 的答案很接近。
如果您正在寻找另一个进行验证的函数,这可以为您提供一个起点:
#include <stdio.h>
int get_input (int *integerINput, char *characterInput);
void valid_input (int inp);
main()
{
int integerInput;
char charInput[2];
// man scanf reports that scanf returns the # of items
// successfully mapped and assigned.
// gcc 4.1.2 treats it this way.
if (get_input (&integerInput) < 2)
{
printf ("Not enough characters entered.\n");
return;
}
valid_input (integerInput);
}
int get_input (int *integerInput, char *characterInput)
{
int inputCharsFound = 0;
printf ("Enter an integer: ");
inputCharsFound += scanf ("%d", inp);
printf ("Enter a character: ");
// The first scanf leaves the newline in the input buffer
// and it has to be accounted for here.
inputCharsFound += scanf ("\n%c", characterInput);
printf ("Number of characters found = %d\n", inputCharsFound);
return inputCharsFound;
}
void valid_input (int inp)
{
if (inp > 5)
printf ("You entered a value greater than 5\n");
else
printf ("You entered a value less than 5\n");
}
编辑
HasanZ 在下面的评论中询问了有关如何处理多个变量的更多详细信息。我已更新代码以读取另一个输入字符。
我将由您来确定如何最好地接受适当的输入并验证该输入,因为您已经笼统地询问了如何在单独的函数中进行验证。
我还会在这里查看有关 C 编程的更多信息。