C 字符串输出胡言乱语

C 字符串输出胡言乱语,c,C,在我的C脚本中,我的输入输出的是胡言乱语,我不知道为什么 这或多或少是我写的 int main (int arg, char argv[]) { printf(argv); } 这将打印出giberish?以下内容将产生您要查找的结果 #include <stdio.h> int main(int argc, char **argv) { // Check if there is at least 2 arguments. First argument is th

在我的C脚本中,我的输入输出的是胡言乱语,我不知道为什么

这或多或少是我写的

int main (int arg, char argv[])
{
    printf(argv);
}

这将打印出giberish?

以下内容将产生您要查找的结果

#include <stdio.h>

int main(int argc, char **argv)
{
    // Check if there is at least 2 arguments. First argument is the executable name.
    if(argc > 1)
    {
        // Print out a string, followed by a new-line character.
        printf("%s\n", argv[1]);
    }
    // Exit successfully
    return 0;
}

如果您想检查一个完整的字符串,而不是只使用一个字符,请考虑使用一个函数,如在<代码> <代码> > .< /p>代码> char ARGV[] /<代码> >代码> char *ARGV[] /<代码>代码> PROTF(ARGV);<代码>-->
printf(“%s\n”,*argv)将**添加到argv会给我一个错误“/usr/include/stdio.h:362:12://“const char*restrict”但Aragement的类型是“char***”extern int printf(const char*_restrict_format,…);“我搜索到我需要使用双引号而不是单引号,但在我的所有代码中我没有使用任何单引号(),您是否将其更改为
**argv[]
?如果是这样的话,它应该是
*argv[]
**argv
。好的,*argv使错误消失,但是输出仍然是乱七八糟的,可能是因为这两件事都不是我建议的。给我一秒钟,我会用你的部分代码更新我的答案。
if ( *(argv[1]) == 'f' )
{
    ....
}