#url #variables #c -cli #browser
#url #переменные #c -cli #браузер
Вопрос:
все, я пытался скомпилировать программу, используя C / CLI, чтобы проверить мои запасы, но я столкнулся с ошибкой, когда я поместил переменную в URL. Кто-нибудь может мне помочь, пожалуйста?
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
this->webBrowser1->Navigate("http://finance.yahoo.com/echarts?s="num".HK Interactive#chart1:symbol="num".hk;range=1d;indicator=volume;charttype=line;crosshair=on;ohlcvalues=0;logscale=on;source=undefined");
}
О, и, кстати, этот код взят из «Приложения Windows Forms», а имя переменной — «num». Опять же, я был бы признателен за любую помощь, если это возможно. Спасибо.
Комментарии:
1. Вы пытаетесь вставить значение num в свой URL-адрес, или вы пытаетесь на самом деле поместить строку «num» в свой URL-адрес?
2. Каково точное сообщение об ошибке?
3. Я отредактировал теги — это C / CLI, не C .
4. Извините всех, из-за моего простого (слишком простого) вопроса я не могу предоставить вам всю необходимую информацию. Пожалуйста, проверьте мой другой вопрос, если можно (я задал только 2 вопроса). Спасибо.
Ответ №1:
Похоже, вы ничего не делаете для построения строки. Я никогда не занимался управляемым C , но я предполагаю, что вы не можете сделать это: "http://finance.yahoo.com/echarts?s="num
и получить то, что вы хотите. В C # вы могли бы просто использовать operator : "http://finance.yahoo.com/echarts?s=" num
, или использовать StringBuilder, или String .Форматирование. Я бы предположил, что в управляемом C есть нечто подобное.
Комментарии:
1. Я уже создал строку для своей программы, и я хочу вставить значение «num» в URL. О, и значение «num», если из текстового поля. Спасибо за быстрые ответы, и может кто-нибудь, пожалуйста, опубликовать пример кода, который мне нужно использовать? Еще раз спасибо за ответы.
2. Что означает «уже построенная строка» в этом случае? Это статическая строка (за исключением того, что вам нужно подключить значение num) или динамически построенная строка?
3. Хорошо, я приношу извинения. Что я имел в виду под «уже построенной строкой», так это то, что я вставил
int num = int:: Parse(textBox1->Text);
в код. Спасибо за помощь! 🙂4. В дополнение к этой проблеме я забыл упомянуть еще одну ошибку (извините). Вот все ошибки, которые я получил: C2146: синтаксическая ошибка: отсутствует ‘)’ перед идентификатором ‘num’ C2059: синтаксическая ошибка : ‘)’ Все они из одной строки, которая является:
this->webBrowser1->Navigate("http://finance.yahoo.com/echarts?s="num".HK Interactive#chart1:symbol="num".hk;range=1d;indicator=volume;charttype=line;crosshair=on;ohlcvalues=0;logscale=on;source=undefined");
. Еще раз спасибо за всю помощь!5. Я думаю, проблема по-прежнему в том, что я сказал — вы не можете просто поместить имя переменной в середину связанных строк, чтобы заставить строки добавляться. sprintf — это способ сделать это со стандартной строкой C ( cplusplus.com/reference/clibrary/cstdio/sprintf ). Я недостаточно хорошо знаю строки stl, чтобы понять, как они учитываются. В C # используется System. Формат, который вы, возможно, сможете использовать в управляемом C .