|
Запутался с указателями и строками в CodeVision |
|
|
|
Jan 31 2008, 14:09
|
Местный
  
Группа: Свой
Сообщений: 413
Регистрация: 15-12-06
Пользователь №: 23 563

|
Есть библиотечка под CodeVision - для LCD от Siemens. Там есть функции Код u08 buffer[1][4];
void ram_to_lcd(u08 x,u08 y,unsigned char*str,u08 font,u08 rot, ui16 color) { u08 i=0; while (*str !='\0') { put_char(x+i*CHAR_W,y,*str++,rot,font,color); // 0 deg. rotated i++; x++; }
} //******************************************************вывод строка из ram****************************** void lcd_str_ram(u08 x,u08 y,ui16 var, u08 font,u08 rot,ui16 color) { sprintf(buffer ,"%-i",var); ram_to_lcd(x,y,buffer,rot,font,color);
} Автор библиотеки (один из посетителей этого форума) делает так: Код int variable;
void main() { variable=200; lcd_str_ram(65,75,variable,f8x14,0,black);
} У меня же ничего не выводится. Пробовал через sprintf - ничего не выходит. Слабоват я в указателях - ткните носом.
|
|
|
|
|
 |
Ответов
|
Feb 1 2008, 11:10
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(Kuzmi4 @ Feb 1 2008, 11:13)  То есть вы хотите сказать что подставив variable и &variable - я получу одинаковые результаты ? Даже без студии - один из вариантов компилиться не будет. Еслим будет - компилятор на свалку. Ибо параметром void lcd_str_ram является u16 и попытку передавать вместо него указатель без явного приведения типа компилятор обязан пресекать. Если бы параметром был указатель на char (как в функции ram_to_lcd()) то компилятор тоже обязан отличать array от &array, ибо первый имеет тип char * а второй - char **. array эквивалентен &array[0], т.е. имя массива - это указатель на его нулевой элемент. Цитата(Зверюга @ Feb 1 2008, 12:44)  Мне же нужно допустим, математически получить число 200, присвоить это значение переменной variablе и вывести на экран. Убедитесь сначала, что он у вас хоть что-нибудь выводит при помощи lcd_str_ram(), хоть русский эквивалент "Hello, world!" (слово из трех букв).
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
Сообщений в этой теме
Зверюга Запутался с указателями и строками в CodeVision Jan 31 2008, 14:09 Kuzmi4 2 Зверюга - как то оно на первый взгляд смотрится.... Jan 31 2008, 14:37 mrKirill Код примера точно для CodeVision? Jan 31 2008, 16:12 mdmitry Цитата(Зверюга @ Jan 31 2008, 17:09) Кодu... Jan 31 2008, 20:38 defunct ЦитатаУ меня же ничего не выводится.
может совсем ... Jan 31 2008, 21:17 bzx 1. Повнимательнее посмотри, что передаёшь в качест... Jan 31 2008, 21:40 defunct Цитата(bzx @ Feb 1 2008, 00:40) 2. Абсолю... Jan 31 2008, 23:14 Зверюга Господа, вывод на LCD работает. СТроки из flash вы... Feb 1 2008, 06:20 bzx Сделай так
Кодchar variable[32];
...
spri... Feb 1 2008, 07:53 defunct Цитата(Kuzmi4 @ Feb 1 2008, 12:13) То ест... Feb 1 2008, 11:52 Зверюга Цитатаchar variable[32];
...
sprintf ( variable, ... Feb 1 2008, 10:44 bzx Цитата(Зверюга @ Feb 1 2008, 13:44) ЧТо-т... Feb 1 2008, 11:13 Kuzmi4 2 defunct - стоп:
1) "...Если variable - масс... Feb 1 2008, 12:09 defunct Цитата(Kuzmi4 @ Feb 1 2008, 15:09) 2 defu... Feb 1 2008, 12:19 Kuzmi4 2 defunct - я на счёт
(char *)p1 = (char *)0x10... Feb 1 2008, 12:36 defunct Цитата(Kuzmi4 @ Feb 1 2008, 15:36) Просто... Feb 1 2008, 12:47 Kuzmi4 2 defunct - ладно, как доберусь к винавру с студие... Feb 1 2008, 12:56 defunct Ок, доберетесь - отпишите. Feb 1 2008, 13:02 BelTech 2 зверюга
ты вариант от bzx пробовал? у меня вро... Feb 1 2008, 19:00 Kuzmi4 2 defunct - пробовал специально
func( buffer );
... Feb 1 2008, 22:36 Зверюга BelTech
Цитатадавно писал, уже не помню, пока всё ... Feb 2 2008, 06:15 Зверюга Короче, вот это работает:
Цитатаchar flash *str;
... Feb 2 2008, 16:09 BelTech зачем нужна функция Lcd_str_ram
Я хотел её запихнк... Feb 2 2008, 16:50 Зверюга BelTech
кстати, какова скорость, fps?
У меня что-т... Feb 2 2008, 17:07 BelTech да, закрашенный прямоугольник на глаз долго рисует... Feb 2 2008, 17:18 Зверюга И вот еще что... у немцев есть библиотека glcd - н... Feb 2 2008, 17:32 BelTech только что, убирал spi2x , странно, скорость отрис... Feb 2 2008, 17:49 Зверюга Нет. Ну выложи с иконками. Feb 2 2008, 18:05 BelTech вот недоделанный проект, может пригодиться. Feb 2 2008, 18:19 Зверюга все работает, иконки грузятся, спасибо. однако над... Feb 2 2008, 18:36 BelTech ну так у этих людей и надо спрашивать про fps, мен... Feb 2 2008, 18:39
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|