我正在尝试检索用户输入,并找出他们是否在输入的末尾添加了“.txt”。如果他们有,什么也不做,如果没有-做点什么。你知道吗
以下是我迄今为止的一些代码:(argv[3]和[4]是用户的输入):
int main(int argc, char *argv[])
{
if (strlen(argv[3]) > 4){
usernames = strcpy(argv[2], ".txt");
}
if (strlen(argv[4]) > 4){
passwords = strcpy(argv[3], ".txt");
}
}
我已经在Python中掌握了它,我只是不能将它转换成C编程。下面是我的Python版本:
#Ask user for a file name
while True:
inp = raw_input("Enter file name: ")
if len(inp) > 0:
break
else:
print "No file name givin, please try again"
#Check if file name has ".txt" on the end
if inp[-4:] != ".txt":
inp = str(inp)+".txt"
您可以使用:
}
编辑:现在所有字符串都以“.txt”结尾
C和python是非常不同的语言—最大的区别之一是需要静态声明变量。在您的代码中,变量
usernames
和passwords
必须声明为正确的类型才能允许赋值。下面是一些代码,根据代码中的条件将“.txt”添加到用户名或密码中。你知道吗我们使用
strcpy
将char数组从argv
复制到usernames
。我们还使用strcmp
检查最后4个字符是否是.txt
。strcmp
在我的代码中使用一些指针数学来确保检查最后4个字符。我们也对passwords
进行同样的检查。你知道吗样本输入:
样本输出:
相关问题 更多 >
编程相关推荐