gpt4 book ai didi

C - 在数组中存储 main() 参数

转载 作者:太空宇宙 更新时间:2023-11-04 05:53:32 26 4
gpt4 key购买 nike

我正在使用银行家算法创建一个多线程程序,所有程序都经过硬编码和编译,但我在从用户输入填充初始可用数组时遇到问题

#DEFINE NUMBER_OF_RESOURCES 3

int available[NUMER_OF_RESOURCES]; //available will be length of argc i.i number of total resoruces

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

printf("AVAILABLE RESOURCE: \n [");
//Populate Available Resource Array
for (i = 1; i < argc; i++)
{
available[i-1] = argv[i];
printf("%d ", available[i]);
}
printf("] \n\n");
}

执行时:./a.out 10 7 5

它打印:

[1604031496 1604031499 1604031501 ] 

最佳答案

您不能使用普通赋值将字符串转换为整数(您应该已经收到有关将 char* 赋值给 int 而不进行强制转换的编译器警告)。调用 atoi() 来解析整数。

available[i-1] = atoi(argv[i]);

关于C - 在数组中存储 main() 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33180333/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com