Здравствуйте. Мой вопрос возможно покажется глупым но не получается найти на него ответ. Имеется следующий код:
const int ic = i;
const int * сpic = ⁣
в ответ на этот код я получаю ошибку:
error: stray ‘321’ in program
не очень понимаю, о чем мне говрит компилятор. Не могли бы вы объяснить, в чем тут дело? Заранее спасибо.
задан 4 авг 2013 в 18:31
Andy_ReedAndy_Reed
9071 золотой знак15 серебряных знаков27 бронзовых знаков
4
У вас идентификатор сpic сочетает в себе кириллические и латинские символы. Можете убедиться в этом здесь. Видимо, ваш компилятор (а может и стандарт C++, точно не знаю) предпочитает латиницу. Вероятно, виной тому Punto Switcher. Во избежание таких случаев рекомендую занести в исключения Switcher’а вашу IDE, чтобы он не переключал автоматически то, что вы печатаете
ответ дан 4 авг 2013 в 18:57
DreamChildDreamChild
36k2 золотых знака44 серебряных знака85 бронзовых знаков
4
Пытаюсь передать функции «строковый массив», но он выводит ошибку вместе с правильным выводом.
C++:
#include <iostream>
#include <cstring>
using namespace std;
void echo(char* string){
cout << string << endl;
}
int main(){
echo("abc");
return 0;
}
Терминал:
linux>~>cpp> ./build.sh
main.cpp: In function ‘int main()’:
main.cpp:10:7: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
10 | echo("abc");
| ^~~~~
abc
-
Вопрос заданболее года назад
-
913 просмотров
Нужно const char*
А так да, имя совпало со стандартным классом — нехорошо
Пригласить эксперта
string — это название класса STL.
void echo(char* str){
cout << str << endl;
}
Можно через указатель
void printer(char *str)
{
cout << str << endl;
}
Можно через массив char
void printer(char str[])
{
cout << str << endl;
}
-
Показать ещё
Загружается…
24 июн. 2023, в 22:35
1500 руб./за проект
24 июн. 2023, в 21:49
1000 руб./за проект
24 июн. 2023, в 18:21
30000 руб./за проект
Минуточку внимания
Модератор: Модераторы разделов
-
chups
- Сообщения: 79
- ОС: Debian Lenny GNU/Linux
ошибки коплиляции программ Qt4, stray
всем привет. уважаемые форумчане подскажите в чем проблемма: пишу не очень сложную программку, до поры до времени она собиралась, а потом начались появляться непонятные мне ошибки компиляции:
Код:
chups@linux-chups:~/from PCLinuxOS/Data Base/current work/temp_tableview> make
make: Warning: File `ui_dbFile.h' has modification time 2,2e+04 s in the future
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_SQL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/default -I. -I/usr/include/QtCore -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtGui -I/usr/include/QtSql -I/usr/include/QtSql -I/usr/include -I. -I. -I. -o table.o table.cpp
table.cpp:10: error: stray ‘321’ in program
table.cpp:10: error: stray ‘201’ in program
table.cpp:13: error: stray ‘321’ in program
table.cpp:13: error: stray ‘201’ in program
table.cpp:15: error: stray ‘321’ in program
table.cpp:15: error: stray ‘201’ in program
make: *** [table.o] Ошибка 1
а вот здесь у меня вообще произошла ломка понятий
:
Код:
chups@linux-chups:~/from PCLinuxOS/Data Base/current work/temp_tableview> make
make: Warning: File `ui_dbFile.h' has modification time 2,2e+04 s in the future
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_SQL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/default -I. -I/usr/include/QtCore -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtGui -I/usr/include/QtSql -I/usr/include/QtSql -I/usr/include -I. -I. -I. -o table.o table.cpp
g++ -o temp_tableview main.o table.o workWithDb.o moc_workWithDb.o -L/usr/lib -lQtSql -L/usr/lib -lQtGui -L/usr/X11R6/lib -lpng -lSM -lICE -lXi -lXrender -lXrandr -lXfixes -lXcursor -lXinerama -lfreetype -lfontconfig -lXext -lX11 -lQtCore -lz -lm -lrt -ldl -lpthread
make: предупреждение: Неправильный ход часов. Сборка может быть неполной.
В чем проблема? из-за чего возникают ошибки. код вроде правильный…
Qt4 изаю последний, пробовал собирать в 2 системах: opensuse и pclinuxos, результат одинаков
Сам исходный код прилагаю
-
whirlwind
- Сообщения: 67
Re: ошибки коплиляции программ Qt4, stray
Сообщение
whirlwind » 28.05.2008 17:52
chups писал(а): ↑
28.05.2008 17:17
make: предупреждение: Неправильный ход часов. Сборка может быть неполной.
это вроде бы как раз ясно: у файла main.cpp дата последнего изменения стоит 29 число, хотя сегодня еще 28е видимо, на одной из двух систем у вас что-то со временем
а вообще, есть подозрение, что там буквы «со» русские используются..
я две строки полностью перенабрал, а в этой
connect(connectButton, SIGNAL(clicked()), this, SLOT(connectionToDB()));
заменил только со, после чего оно соизволило нормально собраться
Добро всегда побеждает зло. Мы победили, значит мы — добро.
-
GRS
- Сообщения: 236
- Статус: C++ Pro
- ОС: Suse10.2/XP
Re: ошибки коплиляции программ Qt4, stray
Сообщение
GRS » 28.05.2008 18:40
chups
Поддерживаю или лучше сказать присоединяюсь к тому что ответил whirlwind
Ошибки первого рода часто бывают, при копировании текста из буфера. Самое ужасное, когда там непечатные символы — тогда только редактор помогает, при включении отображения непечатных символов.
-
Assuri
- Сообщения: 678
- Статус: #include <brain.h>
- ОС: Fedora 12
- Контактная информация:
Re: ошибки коплиляции программ Qt4, stray
Сообщение
Assuri » 28.05.2008 19:58
table.cpp:10: error: stray ‘321’ in program
table.cpp:10: error: stray ‘201’ in program
table.cpp:13: error: stray ‘321’ in program
table.cpp:13: error: stray ‘201’ in program
table.cpp:15: error: stray ‘321’ in program
table.cpp:15: error: stray ‘201’ in progra
Везде, где есть «слово» connectButton вылазиет эта ошибка. Скорее всего Вы копипастили. Наверное буква «c» в слове connect у Вас русская, а не английская. Хотя это только предположение. Попробуйте эти строки переписать снова вручную.
-
chups
- Сообщения: 79
- ОС: Debian Lenny GNU/Linux
Re: ошибки коплиляции программ Qt4, stray
Сообщение
chups » 28.05.2008 20:52
всем спасибо все исправилось и мои понятия стали на места
с временем вы точно угдали: я работал в одной системе, потом вырубил комп и биосе время поменял, ну и сразу загрузился в другую систему и оттуда продолжил работать
на счет русских букв — может быть, я как раз когда «создавал» кнопку болтал по аське, может быть и вбил русский символ
Всем спасибо, тему можно закрывать
P.S. токо сейчас заметил что у мну на часах стоит 29-е число, время выставил нормально, а вот день что-то провтикал
Для «чаников со свистком»
Offline
Зарегистрирован: 22.10.2017
Гуру вопрос к вам.
Написал вот такой скетч
#include <arduino.h> byte buff=0; void setup() { // put your setup code here, to run once: Serial.begin(115200); } void loop() { // put your main code here, to run repeatedly: while (1) { Serial.available()>0; } buff=Serial.read(); if( buff==1) Serial.println(10,HEX); delay (200); }
Т.е если приняли «1» то надо вернуть «10» HEX
Но возврашается какая то ерунда размером более 400 байтов.
Вопрос — ЧТО, ГДЕ, не так
При компиляции проекта в Android IDE возникла ошибка
LampCore:20: error: stray ‘302’ in program
Код, который вызывал ошибку не был какой то особенный, была объявлена простенькая структура с полями:
typedef struct {
char mode[20];
byte brightness;
} Config;
В моем случае ошибка возникла из за того, что я случайно в названии структуры Config написал не латинский символ C. Самое интересное что с виду все кажется в порядке, а на самом деле это не так, и возникает ошибка «stray ‘320’ in program».
Так что решение — использовать только латинские символы (это не касается комментариев).
Также могут возникать другие ошибки такого же рода, только с другим кодом
Скорее всего что следующие ошибки:
error stray 1 in program
error stray 2 in program
error stray 200 in program
error stray 201 in program
error stray 213 in program
error stray 223 in program
error stray 226 in program
error stray 227 in program
error stray 240 in program
error stray 253 in program
error stray 273 in program
error stray 302 in program
error stray 320 in program
error stray 321 in program
error stray 340 in program
error stray 342 in program
error stray 357 in program
error stray 361 in program
тоже связанны с этой проблемой, если это не так, пожалуйста отпишитесь в комментариях.