加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何在C中找到argv []的长度

发布时间:2020-12-16 05:31:49 所属栏目:百科 来源:网络整理
导读:#include stdio.h #include stdlib.h #include string.h int main(int argc,char *argv[]){ int fir; //badly named loop variable char *input[] = calloc( strlen(argv),sizeof(char)); //initializing an array for( fir = 1; fir strlen(argv); fir++){
#include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    int main(int argc,char *argv[]){
        int fir; //badly named loop variable
        char *input[] = calloc( strlen(argv),sizeof(char)); //initializing an array
        for( fir = 1; fir< strlen(argv); fir++){ //removing the first element of argv
            strcat(input,argv[fir]); // appending to input
            }

我得到的错误是第6行.它表示“strlen”的参数1从不兼容的指针类型传递,我得到与strcat函数相同的错误.
它还说给定一个char **,但是预期这两个函数都有一个const char *.我试图填充一个新数组,其中包含所有argv的元素,除了第一个.我试过argv =& argv [1],它没有工作.
strlen()和strcat()函数没有使用char数组吗?

解决方法

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

argv是一个指向char(即字符串数组)的数组.该数组的长度存储在argc参数中.

strlen用于检索必须为空终止的单个字符串的长度,否则行为未定义.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读