gpt4 book ai didi

c - for 循环中的 post 和 pre 增量。 C 中没有库函数的字符串长度

转载 作者:行者123 更新时间:2023-11-30 18:54:09 25 4
gpt4 key购买 nike

我正在尝试使用库函数查找字符串的长度。

char card[16];                  //card number in char array.
unsigned int cardno[16]={0}; //card number in int array for calculations.

int i,length=0,len;
printf("Credit Card Number[without any spaces]: ");
gets(card);

for(i=0;card[i]!='\0';i++);
len=i;
length=strlen(card);

printf("%d %d",len,length);

但是如果我输入 16 位卡号,则输出为 16 17但除此之外[卡号小于 16 位] 两个输出都是相同的。这是前后增量的影响还是其他原因。请解释一下。

最佳答案

首先,您需要一个更长的 16 位数字的字符数组:

char card[17];  // 16 digits + `\0`  

然后试试这个:

for(len=0; card[len] != '\0'; len++);

不要依赖循环外部i值。

关于c - for 循环中的 post 和 pre 增量。 C 中没有库函数的字符串长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30908039/

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