gpt4 book ai didi

c - 在 C 中检查字符串中的数字时遇到问题

转载 作者:行者123 更新时间:2023-11-30 17:33:08 24 4
gpt4 key购买 nike

我检查了论坛上发布的类似问题,但没有一个回答我的问题。

我有一个字符串 (char s []),我想将该字符串中的数字“复制”到另一个字符串 (char n [])。

这是我的尝试:

   char s[] = "oa323shsh123383.33hbabsa3€"
int len = strlen(s);
char n[];
int k;

for (k = 0; k <= len; k++){
if( s[k] >= '0' || s[k] <= '9') {
n[k] = s[k] - 48;
}
}

但是这是错误的,因为它没有打印出任何内容。有人可以帮助我吗?

最佳答案

在 IF 中使用 &&。

分配你的数组n。简单的方法是将 n 声明为

char n[] = char[len+1];

使用另一个变量来计算添加到 n 的数字,否则你将得到 n:

"..323....123383" etc

最终应该是这样的

char s[] = "oa323shsh123383.33hbabsa3€"
int len = strlen(s);
char n[] = char[len+1];
int k, j=0;

for (k = 0; k <= len; k++){

if( s[k] >= '0' && s[k] <= '9') {
n[j] = s[k] - 48;
n[j+1] = '\0';
j++;
}
}

关于c - 在 C 中检查字符串中的数字时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23861448/

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