无法按整数在字符 [size] 上设置大小

Cant set size on char [size] by int

本文关键字:设置 size 整数 字符      更新时间:2023-10-16

初始化const int sz = copy_wav_v;以设置我的name_wav[sz]大小但它的保持错误

error C2057: expected constant expression

//some code
                    if(char_chck >= 7 && character != 13)
                    {
                        copy_wav[copy_wav_v] = Readfile[i];
                        copy_wav_v++;
                    //  wav_n->Text=System::Convert::ToString(copy_wav_v);
                    }
                    if(character == 13)
                    {
                    //  const int sz = System::Convert::ToInt32(wav_n->Text);
                        const int sz = copy_wav_v;
                        char name_wav[sz]; //error starts here
                        for(int j = 0; j<=copy_wav_v;j++)
                        {
                            name_wav[j] = copy_wav[j];
                            if(j==copy_wav_v)
                            {
                                wav_name->Text= gcnew String(name_wav);
                            }
                        }
                    }
                    //some code

我目前正在制作一个带有Windows表单应用程序的音板系统。

您正在声明一个静态数组。静态声明的数组在编译时分配内存,它们的大小是固定的,即以后不能更改。

sz值在运行时定义。

您需要使用动态数组。 例如,看看std::vector