帮我写一段c++去字符串的末尾0的代码
时间: 2023-05-19 08:05:14 浏览: 337
当然可以,以下是一段去字符串末尾0的C代码:
```c
#include <stdio.h>
#include <string.h>
void removeTrailingZeros(char* str) {
int len = strlen(str);
while (len > 0 && str[len-1] == '0') {
str[len-1] = '\0';
len--;
}
}
int main() {
char str[] = "123.45000";
removeTrailingZeros(str);
printf("%s\n", str); // Output: 123.45
return 0;
}
```
这段代码会将字符串末尾的0去掉,输出结果为去掉末尾0的字符串。
相关问题
帮我写一段c++代码,使用while(cin.get(ch))读入字符串并储存在字符型数组line中
以下是使用while(cin.get(ch))读入字符串并储存在字符型数组line中的C++代码:
```c++
#include <iostream>
using namespace std;
int main() {
char line[100];
char ch;
int i = 0;
while (cin.get(ch)) {
if (ch == '\n') break;
line[i] = ch;
i++;
}
line[i] = '\0';
cout << "The string you entered is: " << line << endl;
return 0;
}
```
在这段代码中,我们定义了一个字符型数组line,用来存储输入的字符串。我们使用while(cin.get(ch))循环读入字符,如果读入的字符是换行符,就跳出循环。将读入的字符存储在line数组中,同时使用一个计数器i来记录存储的位置。最后,我们在line数组的末尾加上一个空字符'\0',以表示字符串的结束。最后输出读入的字符串。
C++如何把字符串数组末尾的0打印出来
对于您的问题,我会给出一个C语言的实现方法:
```c
#include <stdio.h>
#include <string.h>
int main(void) {
char string[] = {'H', 'e', 'l', 'l', 'o', '\0', '\0', '\0'};
int len = strlen(string);
for(int i = len - 1; i >= 0; i--) {
if(string[i] == '\0') {
printf("0 ");
} else {
break;
}
}
return 0;
}
```
这段代码会在字符串数组 `string[]` 的末尾打印出所有的 `0` 。当然,这个实现方法并不完美,可能并不是最好的方法,但是,它可以帮助您了解如何实现这个功能。
阅读全文