Типизированная строка :: длина ().Я получил "Невозможно определить длину идентификатора" - PullRequest
0 голосов
/ 09 июня 2018

Использование системы Win8.1.Использование среды IDE NetBeans для программирования на C ++, поскольку она предлагает простой способ создания простых окон.

Код:

#include <cstdlib>
#include <iostream>
#include <ctime>
#include <string>

using namespace std;


int main(int argc, char** argv) {

    srand(time(NULL));

    int seed_component0 = rand();

    string Player_name;
    string seed_component1;

    int i = 0;

    cout << "Please, enter your player name: ";
    cin >> Player_name;
    while (i < Player_name.length()){

        seed_component1.append(int(Player_name[i]));
        i++;
    }

    string seed = seed_component0 + seed_component1;

    cout << endl << "The seed we will use is " << seed << endl;


    return 0;
}

Это только основной файл, я только создал новый проект и попытался сделатьчто, но когда я попытался запустить его, он выдал «Невозможно определить длину идентификатора», я также попытался с size ().Он просто не знает, что это такое.

Также у меня есть другая ошибка, которая не влияет на программу, по крайней мере сейчас;в строках включения указано «Файл библиотеки (путь), но во включенном файле (путь) wctype.h есть неразрешенный #include

Я использую MinGW в качестве компилятора.

Редактировать: я также хотел использовать to_string (), и он тоже не работал.

1 Ответ

0 голосов
/ 09 июня 2018

Я пытался использовать sstream вместо to_string () для конвертации.Я также заменил ваш цикл while на цикл for.Размер () работает для меня, хотя

Просто взгляните на http://www.cplusplus.com/articles/D9j2Nwbp/, который о преобразовании чисел в строки и наоборот

#include <cstdlib>
#include <iostream>
#include <ctime>
#include <string>
#include <sstream>

using namespace std;

string IntToString(int Number)
{
    ostringstream ss;
    ss << Number;
    return ss.str();
}

int main(int argc, char** argv) {

    srand(time(NULL));

    int seed_component0 = rand();

    string Player_name;
    string seed_component1;

    int i = 0;

    cout << "Please, enter your player name: ";
    cin >> Player_name;

    int name_length = Player_name.size();
    for(int i = 0; i < name_length; i++)
    {
        seed_component1 += IntToString(int(Player_name[i]));
    }

    string seed = IntToString(seed_component0) + seed_component1;

    cout << endl << "The seed we will use is " << seed << endl;


    return 0;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...