| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 858 人关注过本帖
标题:求助!C语言问题
只看楼主 加入收藏
北门飘雪
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-8-21
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
求助!C语言问题

#include <stdio.h>
#define PASSWORD "1234567"
int verify_password (char *password)
{
    int authenticated;
    authenticated=strcmp(password,PASSWORD);
    return authenticated;
}
main()
{
    int vaild_flag=0;
    char password[1024];
    while(1)
    {
        printf("please input password:");
        scanf("%s",password);
        valid_flag = verify_password(password);
        if(valid_flag)
        {
             printf("incorrect password!\n\n);
        }
         else
        {
             printf("Congratulation! You have passed the verfication!\n");
              break;   
        }
     }
}
这段代码编译时出现错误:
Text1.c(6) : warning C4013: 'strcmp' undefined; assuming extern returning int
Text1.c(17) : error C2065: 'valid_flag' : undeclared identifier
Text1.c(20) : error C2001: newline in constant
D:\VC6.0++\1\Text1.c(21) : error C2143: syntax error : missing ')' before '}'

因为本人刚开始自学C语言底子薄, 希望给帮帮忙!
搜索更多相关主题的帖子: password include please return C语言 
2012-08-21 17:21
pycansi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:418
专家分:1060
注 册:2012-7-26
收藏
得分:5 
strcmp...定义了吗?包含了吗?
看看11行有啥不对劲...
看20行还差什么...


莫问前尘有愧,但求今生无悔
2012-08-21 17:41
陈风
Rank: 1
等 级:新手上路
帖 子:3
专家分:5
注 册:2012-8-21
收藏
得分:2 
  应该是在main函数后面出现问题,子函数未定义,还发现函数没有返回值。
2012-08-21 18:03
轮椅之星
Rank: 2
等 级:论坛游民
帖 子:18
专家分:42
注 册:2012-8-16
收藏
得分:8 
少头文件string.h。仔细看看valid_flag,你写的不一样。
 下面的代码应该改改:
int verify_password (char *password)
{
    int authenticated;
    authenticated=strcmp(password,PASSWORD);
    return authenticated;
}

int verify_password (char *password)
{
    if (0 == strcmp(password, PASSWORD))
    {
        return 0;
    }else{
        return 1;
    }
}


[ 本帖最后由 轮椅之星 于 2012-8-21 18:05 编辑 ]
2012-08-21 18:04
爱闹的娃
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:265
专家分:975
注 册:2011-10-23
收藏
得分:5 
你要学会看编译后出现的错误信息.....想想你在比较字符串的时候你少不了<string.h>这个头文件.....
2012-08-21 20:31
debugger
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-9-6
收藏
得分:0 
我用VC++6.0调试了一下程序,我认为有没有#include 都能正常运行(虽然编译器会给出提示“arning C4013: 'strcmp' undefined; assuming extern returning int”),但是为了规范,还是加上#include <string.h>
针对你的程序我出两点错误的地方
第一:你在11行定义变量“vaild_flag”而在17行却变成了“valid_flag”  "i"和"l"写反了。
第二:第20行的“printf("incorrect password!\n\n);”末尾输出内容末尾少了"""printf("incorrect password!\n\n");

你忽略了很多细节上的问题,这样的非智力因素在编程中应该尽量避免~!
2012-09-06 22:38
快速回复:求助!C语言问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039610 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved