堆,数组,奇怪的符号

  

编写一个程序,该程序将从cin中读取字符到您在免费存储区中分配的数组中。阅读个人   字符,直到输入感叹号(!)。请勿使用std::string。不用担心内存耗尽。

void resize(char* old,int length)
{
    size_t newLength = 4* length;
    char* r_ptr = new char[newLength];
    memcpy(r_ptr,old,newLength);
    length = newLength;
    delete[] old;
    old = r_ptr;
    for (int i = 0; i < newLength; ++i)
    {
        cin >> *(r_ptr + i);
        cout << r_ptr[i];
    }
}
int main()
{
    int len;
    cin >> len;
    char* ptr = new char[len];
        for (int i = 0; i < len; ++i)
        {
            cin >> *(ptr + i);
            cout << ptr[i];
        }
            resize(ptr,len);
}
len = 5; cin >> *(ptr + i)=“我在这里放了一堆字” 现在我得到了:“ Iputhereabunchofword”

谢谢你们!现在,我设法分配了一个新数组,以防第一个数组被填满。而且是它的两倍。 现在我还有几个问题:

  1. 请推荐一个很好的数据结构课程。
  2. 如何分配一个新数组,以便它将所有文本而不是 只是其中更大的一部分。
  3. 毕竟还正确吗?
xuchong891101 回答:堆,数组,奇怪的符号

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2998335.html

大家都在问