您的位置:首页 > 编程语言 > C语言/C++

关于C语言的有趣问答

2014-07-22 12:58 246 查看
1、gets() 方法

问:以下代码有个被隐藏住的问题,你能找到它吗?

答:这个不显眼www.123uq.com的问题就是使用了 gets() 方法。此方法接受一个string类型参数,但是却没有检测此数值是否 有足够的空间来拷贝数据。所以这里我们一般用 fgets() 方法将来的更好。

#include<stdio.h>

 

int main(void)

{

  char buff[10];

  memset(buff,0,sizeof(buff));

 

  gets(buff);

 

  printf("\n The buffe
4000
r entered is [%s]\n",buff);

 

  return 0;

}

2、strcpy() 方法

问:密码防护是很基本的功能,看看能否搞定下面这段代码?

#include<stdio.h>

 

int main(int argc, char *argv[])

{

  int flag = 0;

  char passwd[10];

 

  memset(passwd,0,sizeof(passwd));

 

  strcpy(passwd, argv[1]);

 

  if(0 == strcmp("LinuxGeek", passwd))

  {

    flag = 1;

  }

 

  if(flag)

  {

    printf("\n Password cracked \n");

  }

  else

  {

    printf("\n Incorrect passwd \n");

 

  }

  retuwww.123vu.comrn 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息