首页 > 解决方案 > 有人可以帮我弄清楚为什么这个简单的功能不起作用吗?

问题描述

我正在尝试将 argv 命令行中的字符串复制到“op”

这是我一直试图修复但无法修复的 C 语言中的函数。我知道这是非常基本的东西,但它超出了我的想象:

  int main(int argc, char* argv[])
{
   char op[90];
   strcpy(op,*argv[1]);
   printf("\n %s",op);
   return 0;
}

标签: cproject

解决方案


使用时不需要指定指针符号strcpy()。改变:

strcpy(op, *argv[1]);

进入:

strcpy(op, argv[1]);

但是如果没有通过任何参数,你仍然会得到段错误。您应该创建一个条件来检查 if argc != 1,如果它是真的,那么在发生任何异常情况之前立即停止程序。


推荐阅读