Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 2489|回復: 6
打印 上一主題 下一主題

請問 判斷一個字串的第幾個字符

[複製鏈接]
跳轉到指定樓層
1#
發表於 2016-12-13 19:52:37 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
下面這張圖片,我用紅色框框圈起來的部分,應該怎麼寫?
圖片出處
>>http://openhome.cc/Gossip/CodeDa ... BlockArduino18.html

"將變數index的值改變1"這段,指的大概是把index的值+1的意思
XXX字串的第N個字符,這種指令我不會,可以的話簡單教一下,謝謝
2#
發表於 2016-12-14 10:06:23 | 只看該作者
"應該怎麼寫?" 是指..什麼意思嗎?

它是說, pinStates 是一個輸入的字串, 由八個字符(字元)組成
以變數 H 來說, 它是由 L, H, H, L, H, H, H, L 組成
以變數 E 來說, 它是由 H, L, L, H, H, H, H, L 組成
....
這個副程式分別去讀字串的第一個到第八個字符
每次讀一個字符(字元)去判斷,
如果是 H, 就把 數位接腳2設為高電位
如果是 L, 就把 數位接腳2設為低電位
.....
共做八次

所以如果是變數 H, 紅框中就是
第一個迴圈因為讀到的是 L,  數位接腳2設為低電位
第二個迴圈因為讀到的是 H,  數位接腳2設為高電位
第三個迴圈因為讀到的是 H,  數位接腳2設為高電位
第四個迴圈因為讀到的是 L,  數位接腳2設為低電位
第五個迴圈因為讀到的是 H,  數位接腳2設為高電位
第六個迴圈因為讀到的是 H,  數位接腳2設為高電位
第七個迴圈因為讀到的是 H,  數位接腳2設為高電位
第八個迴圈因為讀到的是 L,  數位接腳2設為低電位
3#
 樓主| 發表於 2016-12-14 10:50:49 | 只看該作者
對不起我講得不夠清楚 我想問的是紅圈裡的"程式碼"

也就是您說的:
這個副程式分別去讀字串的第一個到第八個字符
每次讀一個字符(字元)去判斷,
如果是 H, 就把 數位接腳2設為高電位
如果是 L, 就把 數位接腳2設為低電位

這段的程式碼
4#
發表於 2016-12-14 10:58:56 | 只看該作者
本帖最後由 超新手 於 2016-12-14 11:02 編輯

你是要改成 Arduino 的C 程式嗎?如果是, 你給的連結下面就有程式碼了
只是它改成 int 而已, 不是用字符
和圖形化的程式有一點小小不同
5#
 樓主| 發表於 2016-12-14 13:06:05 | 只看該作者
for(int i = 0;i < 8; i++) {
        digitalWrite(dataPin, pinState[number - 1][i]);
        digitalWrite(clockPin, 1);
        digitalWrite(clockPin, 0);
    }

這段嗎?
[number - 1][i] 分別是什麼意思?
6#
發表於 2016-12-14 13:24:50 | 只看該作者
這是陣列, 分別用 [][] 裡面的值去取得陣列值
也就是用 number - 1 和 i 去取得陣列的值
const int pinState[9][8] = {
  {0, 1, 1, 0, 0, 0, 0, 0}, // 1
  {1, 1, 0, 1, 1, 0, 1, 0}, // 2
  {1, 1, 1, 1, 1, 0, 1, 0}, // 3
  {0, 1, 1, 0, 0, 1, 1, 0}, // 4
  {1, 0, 1, 1, 0, 1, 1, 0}, // 5
  {1, 0, 1, 1, 1, 1, 1, 0}, // 6
  {1, 1, 1, 0, 0, 0, 0, 0}, // 7
  {1, 1, 1, 1, 1, 1, 1, 0}, // 8
  {1, 1, 1, 1, 1, 1, 0, 0}  // 9
};
7#
 樓主| 發表於 2016-12-14 15:33:14 | 只看該作者
原來如此 我大概懂了
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-4-20 04:54 , Processed in 0.156513 second(s), 10 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表