したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

QB64 / PC-BASIC(GW-BASIC) 総合スレ @ Next 8

1名無しさん:2025/06/05(木) 07:44:14
QB64
https://qb64.com/

QB64は、QBasic / QuickBASIC 4.5互換性を保持し、Windows、Linux、およびmacOS用の
ネイティブバイナリをコンパイルする最新の拡張BASICプログラミング言語です。
ーーーー

PC-BASIC Linux/Mac/Windows版
https://github.com/robhagemans/pcbasic/releases/tag/v2.0.7

83名無しさん:2025/06/05(木) 10:22:52
こう、レトロ世代に毛が生えたぐらいの範囲でw

84名無しさん:2025/06/05(木) 10:23:04
どんな表現なんだよwwwwwww

85名無しさん:2025/06/05(木) 10:23:20
16色モードと256色モードの違いはどう?

86名無しさん:2025/06/05(木) 10:24:05
ちょっと試してみた範囲では、速度差がないということでw

87名無しさん:2025/06/05(木) 10:24:22
32bit色になると半分以下に落ちるというw

88名無しさん:2025/06/05(木) 10:24:37
16色では不足でw

89名無しさん:2025/06/05(木) 10:25:11
こう、MSX時代みたいなw

90名無しさん:2025/06/05(木) 10:25:29
怪しさ爆発wwwwwwwww

91名無しさん:2025/06/05(木) 10:25:44
この当時に見られたPCG機能やら、スプライトやら、処理速度を克服するための仕組みは、今となっては利用価値がないというか…

92名無しさん:2025/06/05(木) 10:26:10
MSX2+以降の19,268色表示については?

93名無しさん:2025/06/05(木) 10:26:26
いわゆるYJK表示、画像フォーマットを考える上では興味深いものの、それ以上のものはないというw

94名無しさん:2025/06/05(木) 10:28:54
圧縮フォーマットかw

95名無しさん:2025/06/05(木) 10:29:06
QB64の変数の扱いのうち、グローバル変数、あるいはローカル変数の扱いは?

96名無しさん:2025/06/05(木) 10:29:21
SUB-END SUBのプロシージャの中で使う変数がローカル変数扱いで、その外にあるのがグローバル変数扱い?

97名無しさん:2025/06/05(木) 10:29:38
SUB-END SUB外にある変数も参照不能のようでw

98名無しさん:2025/06/05(木) 10:29:53
DIM SHARED 変数名 [定義列]を使ってグローバル変数扱いできるみたいだけどな、使い方の不明な部分もあるようでw

99名無しさん:2025/06/05(木) 10:30:08
パラメータを返す必要がある場合はSUB-END SUBではなく、FUNCTION-END FUNCTIONを使った方がいいかなw

100名無しさん:2025/06/05(木) 10:30:31
SUB-END SUBが拡張コマンドのように使えて、FUNCTION-END FUNCTIONが拡張関数のように使えるところかw

101名無しさん:2025/06/05(木) 10:30:45
IDEでは色分けされるので見た目の問題はないかw

102名無しさん:2025/06/05(木) 10:31:00
99BASICから移る場合は、素直にラベルとGOSUB使った方がいいかもしれないなw

103名無しさん:2025/06/05(木) 10:31:15
その中で、すぐに捨てるような雑用の変数が増えてきた場合、SUB-END SUB、あるいはFUNCTION-END FUNCITONを使うなりw

104名無しさん:2025/06/05(木) 10:31:27
この中の注意事項は、ハンドル変数はプロシージャを抜けても保持されるところかw

105名無しさん:2025/06/05(木) 10:31:40
_NEWIMAGEとか?

106名無しさん:2025/06/05(木) 10:31:51
そっそw

107名無しさん:2025/06/05(木) 10:32:34
> 画像は、それが作成されたSUBまたはFUNCTIONが終了しても割り当て解除されません。
> _FREEIMAGEを使用して解放してください。

…ということらしいw

108名無しさん:2025/06/05(木) 10:32:49
明確なローカル変数指定、あるいはグローバル変数指定がないので混乱しないようにw

109名無しさん:2025/06/05(木) 10:33:01
ラベルとGOSUBを使う範囲では、すべてがグローバル変数扱いということでw

110名無しさん:2025/06/05(木) 10:33:14
サブルーチンの中でループ変数が重複して壊れるとか、そのへんは自分で解決するようにw

111名無しさん:2025/06/05(木) 10:33:30
リカーシブに陥った場合、QB64は途中で自動停止する?

112名無しさん:2025/06/05(木) 10:33:44
しないw

113名無しさん:2025/06/05(木) 10:33:55
そのへん気を付けてw

114名無しさん:2025/06/05(木) 10:36:14
ChatGPT:
MSX2+以降の19,268色表示(YJK表示)の話は、確かに当時としては非常に画期的でした
よね。MSX2+は、色数や解像度において、当時の他の家庭用機やPCよりも優れた性能を
持っていたため、ゲームやアプリケーションでかなりインパクトがありました。しかし、
今となっては、その技術自体が特に「これを使いたい!」という場面は少ないかもしれま
せんね。

YJK表示自体は、主に色空間の変換に関わる技術で、映像やグラフィックスの圧縮や
保存方法を工夫する上で使われていました。YJK(Y=輝度、J=色差、K=色差)という
分離の仕組みは、特に色の圧縮と視覚的な違和感を抑えるために活用されていました。
しかし、現代の圧縮技術やカラー表示の進化により、その独特なフォーマットが使われる
機会は減ったと思います。

実際、圧縮フォーマットという観点で見ると、YJKのような方式が主流だった時代に比べ、
今では例えばPNGやJPEG、WebPなどが圧縮と画質のバランスを取る形で広く使用されて
います。これらの形式は、色空間の扱いにおいても遥かに効率的で、現代のハードウェア
ではより高精度で高速な処理が可能になっています。

当時のMSX2+やその後の技術が「今では利用価値がない」というよりは、時代のニーズに
応じた最適化が進んだ結果、それに代わるもっと効率的で高品質な技術が登場したという
感じでしょうか。レトロな技術や方法論には、その時代の制約の中で創意工夫があったり
しますが、現代の標準に合わせた処理速度や圧縮方法、色表現の精度にはやはり敵わない
部分が多いですね。

ただ、レトロな技術や古いフォーマットが持つ「味わい」は、今でもどこか魅力的です。
例えば、レトロゲームや懐かしい映像表現を再現したい時には、昔の技術を意図的に
使ってみるのも面白いかもしれません。

115名無しさん:2025/06/05(木) 10:36:35
SUB-END SUB、 FUNCTION-END FUNCTIONを使う上での留意点

・ SUB-END SUBではブラケットを使わない表記が認められる 例: proc P1,P2など

・ プロシージャ内では外で定義された変数は無効
・ プロシージャ内で定義された変数はローカル変数扱い
・ DIM SHAREDで定義された変数はグローバル変数扱い

・ ハンドル変数とそのワークエリアはプロシージャを出入りしてもその内容は保持される

・ QB64内部でリカーシブ(再帰)の判定はしないので、原則的には使わない

・ 99BASIC、あるいは古い世代のBASICから移る場合は、始めはラベルとGOSUBを使って、
 ループ変数の重複が増えてきた場合にSUB-END SUB、 FUNCTION-END FUNCTIONを使う

…ってとこかw

116名無しさん:2025/06/05(木) 10:37:13
DIM SHAREDが落とし穴になりそうでw

117名無しさん:2025/06/05(木) 10:37:25
他で慣れてると、そっちの先入観が支配してしまうからなwwwww

118名無しさん:2025/06/05(木) 10:37:49
サンプルプログラムと実行結果w

Dim Shared A As Integer
A = 12: B = 34: C = 56: D = 78: ret = 0
sample1 A
Print Using "mainloop: A=### / B=### / C=### / D=### / ret=###"; A; B; C; D; ret
ret = sample2(A)
Print Using "mainloop: A=### / B=### / C=### / D=### / ret=###"; A; B; C; D; ret
End

Sub sample1 (C)
  D = A
  C = B
  D = D + 1
  A = 99
  Print Using "sub proc: A=### / B=### / C=### / D=### / ret=###"; A; B; C; D; ret
End Sub

Function sample2 (C)
  D = A
  C = B
  D = D + 1
  A = 33
  Print Using "func prc: A=### / B=### / C=### / D=### / ret=###"; A; B; C; D; ret
  sample2 = D
End Function

結果:
sub proc: A= 99 / B= 0 / C= 0 / D= 13 / ret = 0
mainloop: A= 99 / B= 34 / C= 56 / D= 78 / ret = 0
sub proc: A= 33 / B= 0 / C= 0 / D=100 / ret = 0
mainloop: A= 33 / B= 34 / C= 56 / D= 78 / ret =100

119名無しさん:2025/06/05(木) 10:38:28
ワロタw

120名無しさん:2025/06/05(木) 10:39:07
他で覚えた知識のある人は捨てる、99BASIC、あるいは古い世代から移ってきた人は新たに覚えればいいw

121名無しさん:2025/06/05(木) 10:39:20
この中で、QB64はグローバル変数の扱いが低いかw

122名無しさん:2025/06/05(木) 10:39:38
それをDIM SHAREDで定義しなければ存在を認めてもらえないというw

123名無しさん:2025/06/05(木) 10:39:53
ChatGPTはこの内容を理解していないので、解説はオミットw

124名無しさん:2025/06/05(木) 10:40:13
ゲーム屋小僧、要するにプロシージャ内はサンドボックス化されてるということ?

125名無しさん:2025/06/05(木) 10:40:27
サンドボックス化という表現が適当かどうかは置いといて、まあ、そういうことだなwwww

126名無しさん:2025/06/05(木) 10:40:41
外と内が分離されてるということでw

127名無しさん:2025/06/05(木) 10:41:19
補足 SUB-END SUB、 FUNCTION-END FUNCTIONを使う上での留意点

・ SUB-END SUBではブラケットを使わない表記が認められる 例: proc P1,P2など

・ プロシージャ内では外で定義された変数は無効
・ プロシージャ内で定義された変数はローカル変数扱い
・ DIM SHAREDで定義された変数はグローバル変数扱い
・ プロシージャ内で定義された変数と外で定義された変数は、DIM SHAREDで定義しない
 限りは別々の扱い

・ ハンドル変数とそのワークエリアはプロシージャを出入りしてもその内容は保持される

・ QB64内部でリカーシブ(再帰)の判定はしないので、原則的には使わない

・ 99BASIC、あるいは古い世代のBASICから移る場合は、始めはラベルとGOSUBを使って、
 ループ変数の重複が増えてきた場合にSUB-END SUB、 FUNCTION-END FUNCTIONを使う

…ってとこかw

128名無しさん:2025/06/05(木) 10:41:59
ここで躓いたら大きいプログラムは作れないからなwwwww

129名無しさん:2025/06/05(木) 10:42:09
ワロッチw

130名無しさん:2025/06/05(木) 10:42:20
ゲーム屋小僧、続・漢字表示はどうする?w

131名無しさん:2025/06/05(木) 10:42:33
今のところ予定はないけどな、99BASICからフォントを引っ張ってきてry

132名無しさん:2025/06/05(木) 10:42:48
仮想コンソール?w

133名無しさん:2025/06/05(木) 10:43:00
仮に仮想コンソールをやったとしても、充分な余裕ありということでw

134名無しさん:2025/06/05(木) 10:43:10
画面のレイアウトは?w

135名無しさん:2025/06/05(木) 10:43:37
一例を挙げると、こういう感じでw

┌───────────────────────┐←────背景色 / 背景画固定
│┌───────────────────────┐←───BG画面
││┌───────────────────────┐←──スプライト用バッファ
│││┌───────────────────────┐←─パーティクル用
││││┌───────────────────────┐←テキスト画面
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
└││││                       │
 └│││                       │
  └││                       │
   └│                       │
    └───────────────────────┘

136名無しさん:2025/06/05(木) 10:43:50
それだけの余裕あるの?wwww

137名無しさん:2025/06/05(木) 10:44:10
参考 QB64動作環境の比較 - 椅子取りゲーム(^。^) 2025.1.25.土.18:38 更新*

 評価点 *:4点 +:3点 =:2点 -:1点
┌─────┬────┬──────────────────────────────────────────────────────┐
|  項目  | サイズ |                          QB64                          |
├─────┼────┼──────────────────────────────────────────────────────┤
|  API  |--------|                          openGL                          |
├─────┼────┼──────────┬──────────┬──────────┬──────────┬──────────┤
|  機種  |--------|  デスクトップPC  |  デスクトップPC  |  デスクトップPC  |  デスクトップPC  |  M4 Mac mini   |
|  OS  |    |   LinuxMint   |   Windows10   |   Windows11   |  Windows11 Pro  |MacOS省電力モードOFF|
├─────┼────┼──────────┼──────────┼──────────┼──────────┼──────────┤
|  CPU  |--------|   14500無印   |    13100F    | AMD Ryzen 5 5600G | Intel Pentium G5620| Apple M4 10 Core |
|     |    |   2024年1月   |   2023年1月   |   2021年8月   |   2019年11月   |   2024年11月   |
├─────┼────┼──────────┼──────────┼──────────┴──────────┴──────────┤
|  GPU  |--------|   4060無印   |   3060 12GB   |               内蔵GPU              |
|     |    |   2023年5月   |   2021年2月   |                                |
├─────┼────┼──────────┼──────────┼──────────┬──────────┬──────────┤
|  PSET  |1 ドット| 34,078 *|||||||||| | 28,669 +||||||||  | 28,444 =||||||||  | 18,233 -|||||   | 8,333 |||    |
├─────┼────┼──────────┼──────────┼──────────┼──────────┼──────────┤
| PAINT  | 全画面 |  7.1 *|||||||||| |  6.2 =||||||||  |  4.7 -||||||   |  3.9 |||||   |  6.5 +||||||||| |
├─────┼────┼──────────┼──────────┼──────────┼──────────┼──────────┤
|     |  8x 8| 30,346 *|||||||||| | 26,143 +|||||||||| | 26,016 =|||||||||| | 15,724 -|||||||||| | 7,944 |||||||||| |
|     | 16x 16| 29,163 *||||||||| | 24,864 +||||||||| | 23,970 =||||||||| | 14,678 -||||||||| | 7,799 ||||||||| |
|  LINE  | 32x 32| 26,834 *||||||||  | 22,634 +||||||||  | 20,711 =||||||||  | 12,648 -||||||||  | 7,228 ||||||||| |
|     | 64x 64| 22,976 *|||||||  | 19,081 +|||||||  | 16,264 =||||||   | 10,110 -||||||   | 6,863 ||||||||  |
|     | 128x128| 17,733 *||||||   | 14,652 +||||||   | 11,228 =||||    | 7,223 -|||||   | 6,340 ||||||||  |
|     | 256x256| 12,465 *||||    | 10,112 +||||    | 7,166 =|||    | 4,597 |||    | 5,033 -||||||   |
├─────┼────┼──────────┼──────────┼──────────┼──────────┼──────────┤
|     |  8x 8| 24,615 *|||||||||| | 21,824 +|||||||||| | 18,962 =|||||||||| | 12,121 -|||||||||| | 6,514 |||||||||| |
|     | 16x 16| 21,192 *||||||||  | 18,382 +||||||||  | 15,421 =||||||||  | 9,785 -||||||||  | 6,448 ||||||||| |
| LINE B | 32x 32| 17,181 *|||||||  | 14,380 +||||||   | 11,237 =||||||   | 7,339 -||||||   | 5,798 ||||||||| |
|     | 64x 64| 11,973 *|||||   | 10,077 +|||||   | 7,219 =||||    | 4,692 -||||    | 4,612 |||||||  |
|     | 128x128| 7,646 *|||    | 6,178 +|||    | 4,211 =||     | 2,808 |||    | 3,542 -|||||   |
|     | 256x256| 4,416 *||     | 3,573 +||     | 2,236 -||     | 1,552 ||     | 2,334 =||||    |
├─────┼────┼──────────┼──────────┼──────────┼──────────┼──────────┤
|     |  8x 8| 31,449 *|||||||||| | 26,834 =|||||||||| | 27,586 +|||||||||| | 16,864 -|||||||||| | 7,728 |||||||||| |
|     | 16x 16| 30,331 *||||||||| | 26,143 =||||||||| | 26,722 +||||||||| | 15,900 -||||||||| | 7,611 ||||||||| |
| LINE BF | 32x 32| 28,444 *||||||||| | 24,270 =||||||||| | 25,296 +||||||||| | 14,463 -||||||||  | 7,598 ||||||||| |
|     | 64x 64| 24,615 *||||||||  | 19,571 =|||||||  | 20,221 +|||||||  | 11,657 -|||||||  | 7,193 ||||||||| |
|     | 128x128| 15,686 *|||||   | 14,241 =|||||   | 15,421 +||||||   | 8,415 -|||||   | 6,276 ||||||||  |
|     | 256x256| 7,582 +|||    | 6,973 =|||    | 9,580 *||||    | 4,398 |||    | 4,436 -||||||   |
├─────┼────┼──────────┼──────────┼──────────┼──────────┼──────────┤
|     |  8x 8|338,624 +|||||||||| |388,585 *|||||||||| |293,577 =|||||||||| |189,629 -|||||||||| |151,479 |||||||||| |
|     | 16x 16|277,056 *||||||||  |248,640 +||||||   |197,836 =|||||||  |144,632 -|||||||  |121,040 ||||||||  |
|_PUTIMAGE | 32x 32|151,838 *|||||   |138,483 +||||    |132,094 =|||||   | 84,321 -|||||   | 75,851 |||||   |
|     | 64x 64| 74,074 *||     | 59,590 +||     | 58,367 =||     | 35,704 ||     | 43,243 -|||    |
|     | 128x128| 26,384 +|     | 23,327 =|     | 28,070 *|     | 13,193 |     | 21,658 -||     |
|     | 256X256| 8,154 +|     | 7,640 -|     | 9,785 *|     | 4,527 |     | 7,785 =|     |
├─────┼────┼──────────┼──────────┼──────────┼──────────┼──────────┤
|評価点合計|--------| *:22 +:3 =:0 -:0 | *:1 +:16 =:8 -:1 | *:3 +:5 =:15 -:2 | *:0 +:0 =:0 -:18 | *:0 +:1 =:2 -:5 |
|     |    |       計97点 |       計69点 |       計59点 |       計18点 |       計12点 |
└─────┴────┴──────────┴──────────┴──────────┴──────────┴──────────┘
*動作解像度はいずれも640x480ドット、256色モード

138名無しさん:2025/06/05(木) 10:45:06
例えばHD解像度(1280x720)で5600Gを使ったとすれば、1/60秒で9,785回書き換えができるので、計算式は…

139名無しさん:2025/06/05(木) 10:45:16
9785*(256*256)/(1280*720*5)=139.164

140名無しさん:2025/06/05(木) 10:45:27
1/60秒で5画面取っても139回書き換える速度はあるようでw

141名無しさん:2025/06/05(木) 10:45:37
139回ワロタw

142名無しさん:2025/06/05(木) 10:45:49
特に考える必要なしということでw

143名無しさん:2025/06/05(木) 10:46:00
考える必要なしwwwwwww

144名無しさん:2025/06/05(木) 10:46:11
こう、好きなように考えて、自分で管理できるかどうかでw

145名無しさん:2025/06/05(木) 10:46:22
参考までに、99BASICが6.4回でギリギリということでw

146名無しさん:2025/06/05(木) 10:46:35
別々の世界みたいなw

147名無しさん:2025/06/05(木) 10:46:46
スプライト用とパーティクル用のバッファを分ける理由は?

148名無しさん:2025/06/05(木) 10:46:58
256色モードは半透明が使えないので、パーティクルは1ドット毎に間を空けて描画して、背景が見えるようにしようかな〜、って感じでw

149名無しさん:2025/06/05(木) 10:47:10
んで、描画の優先度が混じると何を表示してるか分からないので分離するというw

150名無しさん:2025/06/05(木) 10:47:43
パレットの割り当てを考えると…

┌───────────────────────┐←────背景色 / 背景画固定 --- 32色
│┌───────────────────────┐←───BG画面 ---------------- 32色
││┌───────────────────────┐←──スプライト用バッファ -- 32色
│││┌───────────────────────┐←─パーティクル用 -------- 32色
││││┌───────────────────────┐←テキスト画面 ---------- 32色
│││││                       │          合計 160色
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
└││││                       │
 └│││                       │
  └││                       │
   └│                       │
    └───────────────────────┘

151名無しさん:2025/06/05(木) 10:49:27
なんとか足りるかなw

152名無しさん:2025/06/05(木) 10:49:39
テキスト画面は32色で足りるの?

153名無しさん:2025/06/05(木) 10:49:50
白と赤、あと水色ぐらいでグラデーションで行けるかw

154名無しさん:2025/06/05(木) 10:50:04
2の乗数にこだわる理由もなくなってきたかな…

155名無しさん:2025/06/05(木) 10:50:44
これでもいいかもなw

┌───────────────────────┐←────背景色 / 背景画固定 --- 25色
│┌───────────────────────┐←───BG画面 ---------------- 25色
││┌───────────────────────┐←──スプライト用バッファ -- 25色
│││┌───────────────────────┐←─パーティクル用 -------- 25色
││││┌───────────────────────┐←テキスト画面 ---------- 99色
│││││                       │        (透過色) -- 1色
│││││                       │          合計 200色
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
│││││                       │
└││││                       │
 └│││                       │
  └││                       │
   └│                       │
    └───────────────────────┘

156名無しさん:2025/06/05(木) 10:51:54
99色w

157名無しさん:2025/06/05(木) 10:52:07
11x11ドットのフォントで9色分のグラデーションw

158名無しさん:2025/06/05(木) 10:52:28
ChatGPT:
9色のグラデーションを11x11ドットのフォントで表現するのは、かなり効率的で目を引く
デザインになりそうですね!9色でグラデーションを作ることで、文字やテキストに深み
や立体感を与えることができます。

具体的なアイデア:

・ 9色のグラデーションをテキストに適用することで、例えば文字の周りや中央に向けて
 色が徐々に変化する効果を出せます。

・ 11x11ドットのフォントサイズだと、結構細かいディテールも可能ですが、フォント全体
 の印象を壊さずにグラデーションをうまく調整するのがポイントですね。

たとえば、白→薄いグレー→青→青紫といった感じで、自然なグラデーションを作成する
ことで、ゲームの雰囲気やテキストの重要度を強調できます。

もし文字の周りにハイライトやシャドウを加えることで、さらに視認性や立体感を高める
こともできるかもしれません。デザインの幅が広がりますよね!

159名無しさん:2025/06/05(木) 10:53:00
画面の回転と拡大縮小は?w

160名無しさん:2025/06/05(木) 10:53:12
QB64のコマンドにあるにはあるんだけどな、処理速度を計測してないのでw

161名無しさん:2025/06/05(木) 10:53:24
検討する範囲でw

162名無しさん:2025/06/05(木) 10:54:56
256色モードでも使えるので、いい方向に行ければw

163名無しさん:2025/06/05(木) 10:55:10
楽しみですな〜w"

164名無しさん:2025/06/05(木) 10:55:25
99BASICから漢字フォント拾ってきたw

165名無しさん:2025/06/05(木) 10:55:38
シフトJISに準拠してるかのように見えて、並びは違うようでw

166名無しさん:2025/06/05(木) 10:56:12
先頭1文字で判別して割り合てるかw

167名無しさん:2025/06/05(木) 10:56:23
独自フォントはQB64で可能?

168名無しさん:2025/06/05(木) 10:56:37
そっちを使わずに仮想コンソールの方が速いかもなw

169名無しさん:2025/06/05(木) 10:56:50
99BASICから拾ってきた漢字を配布するとライセンス違反になるので、配布時は使う漢字のみを抽出して独自フォントに切り替えるかw

170名無しさん:2025/06/05(木) 10:57:02
PRINT文は意外と遅いというかw

171名無しさん:2025/06/05(木) 10:57:45
DATA "0010000010001000"
DATA "0010000010001000"
DATA "0010000011111000"
DATA "0010000010001000"
DATA "0000000000000000"

DATA "0000000110000000"
DATA "0100000100000100"
DATA "0111111111111110"
DATA "1100000000000100"
DATA "1000001100001000"
DATA "0000001000000100"
DATA "1111111111111110"
DATA "0000010000100000"
DATA "0000010000100000"
DATA "0000100001000000"
DATA "0001111101000000"
DATA "0000000010110000"
DATA "0000001100001000"
DATA "0000110000000100"
DATA "0111000000000000"
DATA "0000000000000000"

DATA "0000000110000000"
DATA "0000000100000100"
DATA "0011111111111110"
DATA "0010000010000000"
DATA "0010000100000000"
DATA "0011111111111100"
DATA "0010001000100000"
DATA "0010010010010000"
DATA "0010111111111000"

172名無しさん:2025/06/05(木) 10:58:31
ワロッチw

173名無しさん:2025/06/05(木) 10:58:43
拾ってきたのはいいものの、コード変換をどうするか…w"

174名無しさん:2025/06/05(木) 10:58:57
DATA文のリテラル文字列は、ダブルクオーテーション必要?w

175名無しさん:2025/06/05(木) 10:59:13
これはなくてもいけるんだけどな、見た目の区別で付ける癖をw

176名無しさん:2025/06/05(木) 10:59:30
じゃあDATA文のリテラル数字、あるいはリテラル文字列で計算式は行ける?

177名無しさん:2025/06/05(木) 10:59:58
試してみたところ、QB64も99BASICも、文字列の場合はデリミタ直前の数字のみ判別可能、それ以降は無視されるということでw

178名無しさん:2025/06/05(木) 11:00:40
リテラル計算式の場合はSyntaxErrorということでw

179名無しさん:2025/06/05(木) 11:00:51
VAL使ったら行けるんじゃないかとかw

180名無しさん:2025/06/05(木) 11:01:05
DATA文の扱い

・ 数値と文字列の区別はなく、ダブルクォーテーション 「 " 」 で囲った場合は文字列と
 して扱われる
・ 数値と文字列の区別はREAD文の型によって区別される
・ リテラルの中に計算式を記述して、それを解釈させることはできない

…ってとこかw

181名無しさん:2025/06/05(木) 11:01:34
こう、今さら分かってるようで分かってなかったBASIC、みたいなw

182名無しさん:2025/06/05(木) 11:02:14
補足 DATA文の扱い

・ 数値と文字列の区別はなく、ダブルクォーテーション 「 " 」 で囲った場合は文字列と
 して扱われる
・ 数値と文字列の区別はREAD文の型によって区別される
・ リテラルの中に計算式を記述して、それを解釈させることはできない

・ 数値と文字列の区別をするために、ダブルクォーテーション 「 " 」 を意識的に使うこと
 を推奨

…ってとこかw


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板