![]() |
#2
Jonny02012019-01-12 22:39
|
把 char *wail 改成 wail[15] 就可以运行
为什么不修改会报错?
求解!

#include <iostream>
using namespace std;
unsigned int c_in_str(const char * str, char ch);
int main()
{
char mmm[15] = "minimum"; // 数组中的字符串
// 有些系统需要使用静态字符来启用数组初始化
char *wail = "ululate"; // wail 指向字符串
unsigned int ms = c_in_str(mmm, 'm');
unsigned int us = c_in_str(wail, 'u');
cout << ms << " m characters in " << mmm << endl;
cout << us << " u characters in " << wail << endl;
return 0;
}
// 这个函数计算字符串str中的ch字符数
unsigned int c_in_str(const char *str, char ch)
{
unsigned int count = 0;
while (*str) // 当*str为'\0'时退出
{
if (*str == ch)
count++;
str++; // 移动指针到下一个字符
}
return count;
}
[此贴子已经被作者于2019-1-12 22:20编辑过]