реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> VS C# + МК, Тип данных ячейки
Ekka
сообщение Sep 22 2017, 08:45
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Привет всем... может, кто знает, что за беда. МК соединяется с ПК через прогу (Visual Studio - C#) по ком-порту.
Есть у меня на форме табличка, куда заносятся данные DataGridView.
Во все ячейки, если заносим числа - они приходят типом String. ВСЕ.
Но в одну единственную 32-ю, если числа от 1 до 9 - типом стринг, если больше 9 - приходит char и начинается галимотья.
От чего так???
Go to the top of the page
 
+Quote Post
richie
сообщение Sep 22 2017, 10:47
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 147
Регистрация: 5-07-04
Из: Обнинск
Пользователь №: 261



Не совсем понятно, какие данные и откуда.
Как понял, то форма отображает поступающие данные с контроллера.

Ошибка скорее всего, не в вижуал студии.

А если сделать явное преобразование типов?

Отладочный вывод с различных этапов передачи данных должен помочь определить где ломаются данные.
Go to the top of the page
 
+Quote Post
alexunder
сообщение Sep 22 2017, 10:56
Сообщение #3


unexpected token
****

Группа: Свой
Сообщений: 899
Регистрация: 31-08-06
Из: Мехелен, Брюссель
Пользователь №: 19 987



Опишите по-подробнее. В DataGridView есть поле DataSource, которое суть DataTable, у которой тип данных колонок можно выставить через DataColumn.DataType


--------------------
А у тебя SQUID, и значит, мы умрем.
Go to the top of the page
 
+Quote Post
x893
сообщение Sep 22 2017, 13:29
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226



Потому что 32 это 2^^5
Так будет и с 64 и с 128 и далее ячейками.
Перейдите не на степень 2, а например на основание 3.
Тогда будет проще и понятнее.
Или попробуйте F# вместо C#.
Go to the top of the page
 
+Quote Post
Forger
сообщение Sep 22 2017, 17:34
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(x893 @ Sep 22 2017, 16:29) *
...

Лучше и не скажешь biggrin.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
mantech
сообщение Sep 24 2017, 17:16
Сообщение #6


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(x893 @ Sep 22 2017, 16:29) *
Или попробуйте F#


Это еще что такое?? Когда закончится придумывание этих языков "программирования", неужели бейсика, паскаля, си и асма недостаточно...
Go to the top of the page
 
+Quote Post
Forger
сообщение Sep 24 2017, 17:34
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(mantech @ Sep 24 2017, 20:16) *
неужели бейсика, паскаля, си и асма недостаточно...

Похожим образом лет 40 назад тамошние закостеневшие "программисты" отзывались про новомодные бейсики, фортраны и др: "Когда закончится придумывание этих языков "программирования", неужели машинных кодов недостаточно?"....



--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
kolobok0
сообщение Sep 24 2017, 17:52
Сообщение #8


практикующий тех. волшебник
*****

Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417



Цитата(mantech @ Sep 24 2017, 20:16) *
...неужели бейсика, паскаля, си и асма недостаточно...



Одно из двух... Или качественно новая метода-парадигма-плоскость, дающая скорость-стоимость-качество...

Или как сказал автор groovy - "я не стал бы изобретать свой язык, если бы мне показали бы Scala".
т.е. переводя на русский язык = неграмотность порождает переоткрытие...


как то так
(круглый)
Go to the top of the page
 
+Quote Post
mantech
сообщение Sep 24 2017, 18:33
Сообщение #9


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Forger @ Sep 24 2017, 20:34) *
Похожим образом лет 40 назад тамошние закостеневшие "программисты" отзывались про новомодные бейсики, фортраны и др: "Когда закончится придумывание этих языков "программирования", неужели машинных кодов недостаточно?"....


И тем не менее, насколько сильно популярны машинные коды?? А эти языки, которые я перечислил, имеют самую большую популярность, а это о чем-то говорит, все-таки laughing.gif

Сообщение отредактировал mantech - Sep 24 2017, 18:33
Go to the top of the page
 
+Quote Post
Forger
сообщение Sep 24 2017, 18:47
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(mantech @ Sep 24 2017, 21:33) *
А эти языки, которые я перечислил, имеют самую большую популярность, а это о чем-то говорит, все-таки

Дом2 тоже имеет большую популярность, все-таки. sm.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Sep 24 2017, 19:09
Сообщение #11


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(mantech @ Sep 24 2017, 18:16) *
неужели бейсика, паскаля, си и асма недостаточно...

ассемблеров тех - сотни тысячи, и всё ещё изобретают и изобретают
вообще, путём сложного эволюционирования прогрммеры наконец-то смогли прийти к тому, что свой язык программирования может написать каждая собака
чем и занимается
Go to the top of the page
 
+Quote Post
Forger
сообщение Sep 24 2017, 19:16
Сообщение #12


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(Огурцов @ Sep 24 2017, 22:09) *
.... каждая собака

Раз уж дошли до животного мира.
Как думаете, что будет делать обезьяна, скажем, со смартфоном? Звонить и отправлять смс-ки? Фигушки!
Она будет им долбить по камню, пока не разломает его или бросит в того, кто дал ей этот смартфон.
А объяснение этому очень простое - естественное природное скудоумие, обезьяна в этом не виновата, на пальмах ей смартфон ни к чему, им бананов не достать (обезьяны, ничего личного ))).
И уж подавно не виноват в этом изобретатель смартфона. Он вообще не при делах, что некая обезьяна не знает что с ним делать sm.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Sep 24 2017, 20:21
Сообщение #13


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



но если под каждую пальму насыпать достаточное количество смартфонов, то обезьяна со временем догадается сбивать ими бананы
что несомненно будет являться некоторым прогрессом по отношению к обезьяне без смартфона

Сообщение отредактировал Огурцов - Sep 24 2017, 20:21
Go to the top of the page
 
+Quote Post
Forger
сообщение Sep 24 2017, 20:51
Сообщение #14


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(Огурцов @ Sep 24 2017, 23:21) *
но если под каждую пальму насыпать достаточное количество смартфонов, то обезьяна со временем догадается сбивать ими бананы

Сомневаюсь, что кому-то есть дело до какой-то там обезьяны, если вокруг полно адекватного народу, который не нужно учить пользоваться смартфоном.


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
Obam
сообщение Sep 25 2017, 08:27
Сообщение #15


Знающий
****

Группа: Участник
Сообщений: 756
Регистрация: 14-11-14
Пользователь №: 83 663



Цитата(Forger @ Sep 24 2017, 23:16) *
Раз уж дошли до животного мира.
Как думаете, что будет делать обезьяна, скажем, со смартфоном? Звонить и отправлять смс-ки? Фигушки!

Вроде как было сообщение, орангутаны научились селфи делать… а вы говорите "долбить по камню"


--------------------
Пролетарий умственного труда.
Go to the top of the page
 
+Quote Post
Ekka
сообщение Sep 25 2017, 11:21
Сообщение #16


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Так и не поняла, ПОЧЕМУ 32 ячейка САМОВОЛЬНО после того, как я ввожу в нее число, большее 9, то есть 10, например, вместо string переводит его в char, берет первую цифру и считает, что это символ номер 49.
При отладке вижу, что во все другие ячейки приходит string "10", а в эту char 49 '1'. Что за штука... почему??? Как это исправить?
Go to the top of the page
 
+Quote Post
mantech
сообщение Sep 25 2017, 12:04
Сообщение #17


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Ekka @ Sep 25 2017, 14:21) *
Так и не поняла, ПОЧЕМУ 32 ячейка САМОВОЛЬНО после того, как я ввожу в нее число, большее 9, то есть 10,


Логика ничего не подсказывает? Например то, что 9-один символ, а 10 уже два... Как в этих птичьих языках здаются типы - фиг знает, но то, что цифра 10 умещается в 1 чар, а "10" - это уже 2 чара, должно быть одинаково везде. А "самовольно" смахивает на какое-то автоопределение типов, что бред ИМХО
Go to the top of the page
 
+Quote Post
Forger
сообщение Sep 25 2017, 12:37
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(Ekka @ Sep 25 2017, 14:21) *
Так и не поняла...

Имхо, эту тему нельзя переносить даже в раздел новичков. По-хорошему, ее вообще стоит нафик стереть smile3046.gif
Такой адский трэш еще поискать нужно wacko.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
kolobok0
сообщение Sep 25 2017, 17:33
Сообщение #19


практикующий тех. волшебник
*****

Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417



Цитата(Ekka @ Sep 25 2017, 14:21) *
Так и не поняла, ПОЧЕМУ 32 ячейка САМОВОЛЬНО после того, как я ввожу в нее число, большее 9, то есть 10, например, вместо string переводит его в char, берет первую цифру и считает, что это символ номер 49.
При отладке вижу, что во все другие ячейки приходит string "10", а в эту char 49 '1'. Что за штука... почему??? Как это исправить?


если коротко и поверхносто, то...
изначально, в компьютерном мире оперировали байтом. и предполагали что этого хватит на все случаи жизни. и поставили в соответствие каждому из 256 его значений некое отображение(символ),
когда речь заходила о кодировке для того или иного формата данных(в частности текста, понятного человеку).

напротив значения 49 (шестнадцатиричное 31h) поставили цифру 1. (числа так и стоят в ряд от 30h до 39h что соответствует от '0' до '9').
дальше-больше... Когда речь зашла об кодировании различных других языков (не англоязычных) то по началу на региональном уровне каждый изгалялся как мог.
Русский например частично располагали выше 128 (80h), частично использовали совпадающее написанию знаков.
Потом усиленно ввелось понимание символа который отображается и собственно самой ячейки под это отведённое. В зависимости от маркетинга и кулика - лидируют в основном
болотца = юникод, мультибайт (ну может ышо парочка)....

Дык вот, возвращаясь к баранам...
То чем Вы оперируете со строкой, ничего не знает о мультибайте(или юникоде). Посему честно записывает, когда требуется более старший разряд, в более левую ячейку. При этом размерность ячеек обычно указывает сам программист.


удачи вам
(круглый)
ЗЫ
А вообще, лучше почитать что нить популярное об локализации, знакогенерации, юникод, мультибайт и иже...

Сообщение отредактировал kolobok0 - Sep 25 2017, 17:34
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Sep 25 2017, 20:40
Сообщение #20


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(Ekka @ Sep 25 2017, 11:21) *
Так и не поняла, ПОЧЕМУ 32 ячейка САМОВОЛЬНО после того, как я ввожу в нее число, большее 9, то есть 10, например, вместо string переводит его в char, берет первую цифру и считает, что это символ номер 49.
При отладке вижу, что во все другие ячейки приходит string "10", а в эту char 49 '1'. Что за штука... почему??? Как это исправить?

вы бы проект запостили, а иначе можно бесконечно гадать
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 06:03
Рейтинг@Mail.ru


Страница сгенерированна за 0.01532 секунд с 7
ELECTRONIX ©2004-2016