-
420 votesanswersviews
int argc,char * argv []是什么意思?
在许多C IDE和编译器中,当它为您生成主函数时,它看起来像这样: int main(int argc, char *argv[]) 当我在没有IDE的情况下编写C代码时,只需使用命令行编译器,我输入: int main() 没有任何参数 . 这意味着什么,对我的计划至关重要? -
5 votesanswersviews
使用sizeof在argv中查找字符串的大小
在这一点上,这更像是一个概念性的问题,而不是一个实际问题,但它确实困扰着我 . 让我们说我有一个名为“test.c”的c程序,我想找到数组中的空格数,用户输入的单词作为参数 . 例如,“ . / test.c test_run”应该打印9,因为有8个字符,然后一个用于空终止字符 . 当我尝试在argv上使用sizeof时虽然我遇到了麻烦 . int main(int argc, char *ar... -
3 votesanswersviews
使用C在OS X中获取其他进程'argv
我想让其他进程'argv像ps一样 . 我正在使用在Intel或PowerPC上运行的Mac OS X 10.4.11 . 首先,我读了ps和man kvm的代码,然后我写了一些C代码 . #include <kvm.h> #include <fcntl.h> #include <stdio.h> #include <stdlib.h> #inclu... -
-2 votesanswersviews
以这种格式main传递argv变量到main的结果(int argc,char const * argv)
我试图找出以这种格式将argv变量传递给main的结果 . main(int argc,char const * argv) . 我知道使用它的正确方法是main(int argc,char const ** argv)或main(int argc,char const * argv []) . 这是我的代码片段, #include <stdio.h> int main( int ... -
-1 votesanswersviews
C:换成argc和argv
我正在开发一个带有一些系统调用的C程序,我正在保存变量,如下所示: int inhandle,outhandle,bytes,read_while_writing_nhandle; char source[128],target[128]; 现在我的程序会提示用户 printf("enter source file name\n"); scanf("%s"... -
0 votesanswersviews
清理argv程序
我有一个argv c程序,它会反转这个词,并且看到它是否是argv,我似乎无法弄清楚如何去做 . int main(int argc,char * argv []){char string =(char)malloc(1000);string [0] = '\0'; for(i = 1; i < argc; i++) ... -
0 votesanswersviews
使用函数变换char *数组但函数退出后字符串值发生变化 .
我正在构建一个简单的命令行解释器 . 它从stdin读取用户输入并解析它以在单独的子进程中运行程序 . 用户输入的格式为:... arg1到arg4是可能的命令行参数 . (我约束输入格式,路径长<100个字符,每个cmd行参数<20个字符长,最多有4厘米线参数) 现在main()函数只读入一行用户输入 . 我的问题是,我抽象输入解析并存储到一个名为extractArgs(char *... -
-1 votesanswersviews
在C中的Caesar密码中使用argc和argv
所以,我试图在Caesars密码中使用argc和argv,以便只用[./ key; string]执行程序(例如./ 13 Caesar) . 我已经尝试了很多方法,虽然我必须承认我真的迷失在这里 . 我在想我应该只使用main(void)并用fgets询问输入,但我仍然有一些好奇心:我怎么能用“int main(int argc,char * argv [])?”来使用它 . 你能给我的任何线索... -
0 votesanswersviews
main()上没有参数的分段错误
我有这个简单的bubblesort程序,当在macOs上编译时可以正常工作,但是当在linux上编译时(使用gcc),在运行时会出现分段错误 . 我很想知道为什么 . #include <stdio.h> #include "alg_utils.h" void bubble_sort(int *, int); int main() { int array... -
77 votesanswersviews
关于'main(int argc, char *argv[])' [重复]
可能重复:main()的参数是什么? int argc,char * argv []是什么意思? 每个程序都以 main(int argc, char *argv[]) 定义开头 . 我不是在程序中使用它们吗?为什么不呢: int main() ? 该程序的名称 *argv[] 和 argc 的元素之一是 *argv[] 中参数数量的计数?发送到 *argv[] 的其他参数是什么?我们如何发送... -
6 votesanswersviews
在C中使用argv?
对于赋值,我需要为我的C程序提供命令行参数 . 我之前(在C中)使用过argc / argv没有遇到任何麻烦,但我不确定C样式字符串是否会影响它的工作原理 . 这是我的主要开始: int main(int argc, char *argv[]){ if(argc>1){ printf("0 is %s, 1 is %s\n",argv[0],argv[1])... -
1 votesanswersviews
是否可以将参数从argv传递给使用dlsym调用的函数?
这是我的C类的一个赋值,它应该是动态库中的一个练习 . 我想出了如何做大部分工作,但我坚持到最后一步 . 基本上,我从指定的文件中获得一个函数,我可以使用dlsym调用它 . 但是,参数的数量和类型可以根据功能而变化 . 我通过argv []给出缩短的函数签名和参数本身 . 像printf('Hello:%s,%d,%f',abc,10,12.4)这样的函数的缩短函数签名将如下所示: vccid ...