C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
掲示板トップ
C# と VB.NET 入門
新規作成
利用方法
ツリー表示
トピック表示
ランキング
記事検索
過去ログ
ログ内検索
キーワードを複数指定する場合は 半角スペース で区切ってください。
検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
[返信]をクリックすると返信ページへ移動します。
キーワード
/
検索条件
/
(AND)
(OR)
検索範囲
/
(現在のログ)
(全過去ログ)
(過去ログ1)
(過去ログ2)
(過去ログ3)
(過去ログ4)
(過去ログ5)
(過去ログ6)
(過去ログ7)
(過去ログ8)
(過去ログ9)
(過去ログ10)
(過去ログ11)
(過去ログ12)
(過去ログ13)
(過去ログ14)
(過去ログ15)
(過去ログ16)
(過去ログ17)
(過去ログ18)
(過去ログ19)
(過去ログ20)
(過去ログ21)
(過去ログ22)
(過去ログ23)
(過去ログ24)
(過去ログ25)
(過去ログ26)
(過去ログ27)
(過去ログ28)
(過去ログ29)
(過去ログ30)
(過去ログ31)
(過去ログ32)
(過去ログ33)
(過去ログ34)
(過去ログ35)
(過去ログ36)
(過去ログ37)
(過去ログ38)
(過去ログ39)
(過去ログ40)
(過去ログ41)
(過去ログ42)
(過去ログ43)
(過去ログ44)
(過去ログ45)
(過去ログ46)
(過去ログ47)
(過去ログ48)
(過去ログ49)
(過去ログ50)
(過去ログ51)
(過去ログ52)
(過去ログ53)
(過去ログ54)
(過去ログ55)
(過去ログ56)
(過去ログ57)
(過去ログ58)
(過去ログ59)
(過去ログ60)
(過去ログ61)
(過去ログ62)
(過去ログ63)
(過去ログ64)
(過去ログ65)
(過去ログ66)
(過去ログ67)
(過去ログ68)
(過去ログ69)
(過去ログ70)
(過去ログ71)
(過去ログ72)
(過去ログ73)
(過去ログ74)
(過去ログ75)
(過去ログ76)
(過去ログ77)
(過去ログ78)
(過去ログ79)
(過去ログ80)
(過去ログ81)
(過去ログ82)
(過去ログ83)
(過去ログ84)
(過去ログ85)
(過去ログ86)
(過去ログ87)
(過去ログ88)
(過去ログ89)
(過去ログ90)
(過去ログ91)
(過去ログ92)
(過去ログ93)
(過去ログ94)
(過去ログ95)
(過去ログ96)
(過去ログ97)
(過去ログ98)
(過去ログ99)
(過去ログ100)
(過去ログ101)
(過去ログ102)
(過去ログ103)
(過去ログ104)
(過去ログ105)
(過去ログ106)
(過去ログ107)
(過去ログ108)
(過去ログ109)
(過去ログ110)
(過去ログ111)
(過去ログ112)
(過去ログ113)
(過去ログ114)
(過去ログ115)
(過去ログ116)
(過去ログ117)
(過去ログ118)
(過去ログ119)
(過去ログ120)
(過去ログ121)
(過去ログ122)
(過去ログ123)
(過去ログ124)
(過去ログ125)
(過去ログ126)
(過去ログ127)
(過去ログ128)
(過去ログ129)
(過去ログ130)
(過去ログ131)
(過去ログ132)
(過去ログ133)
(過去ログ134)
(過去ログ135)
(過去ログ136)
(過去ログ137)
(過去ログ138)
(過去ログ139)
(過去ログ140)
(過去ログ141)
(過去ログ142)
(過去ログ143)
(過去ログ144)
(過去ログ145)
(過去ログ146)
(過去ログ147)
(過去ログ148)
(過去ログ149)
(過去ログ150)
(過去ログ151)
(過去ログ152)
(過去ログ153)
(過去ログ154)
(過去ログ155)
(過去ログ156)
(過去ログ157)
(過去ログ158)
(過去ログ159)
(過去ログ160)
(過去ログ161)
(過去ログ162)
(過去ログ163)
(過去ログ164)
(過去ログ165)
(過去ログ166)
(過去ログ167)
(過去ログ168)
(過去ログ169)
(過去ログ170)
(過去ログ171)
(過去ログ172)
(過去ログ173)
(過去ログ174)
(過去ログ175)
(過去ログ176)
(過去ログ177)
(過去ログ178)
(過去ログ179)
強調表示
/
ON
(自動リンクOFF)
結果表示件数
/
20件
30件
40件
50件
100件
記事No検索
/
ON
大文字と小文字を区別する
全過去ログを検索
ヒット / 4件
(1-4 を表示)
<<
0
>>
■5196
C++で演算子について教えてください
□投稿者/ あいこ -
(2007/07/06(Fri) 13:54:37)
分類:[C/C++]
VC++をはじめてまもなく、基本的なことで恐縮ですが、ご教示ください。
ある図書で
”CFormViewクラス(CViewクラス派生)にエディットボックスIDがIDC_EDIT1があります。
このエディットボックスを認識するためには
CEdit* myED1=(CEdit*)GetDlgItem(IDC_EDIT1);
の記述をします。”
とあるのですが、なにをしているのか、よくわかりません。
"CEdit* myED1"は"CEdit *myED1"とおなじ意味ですか? (ポインタ変数なのですか?)
(CEdit*)とGetDlhItem(IDC_EDIT1)との関係はどうなのでしょうか?
いろいろ、MSDNやネットで調べてみたのですが、そこまで到達できません。
どなたか、ご教示ください。
親記事 /過去ログ15より /
関連記事表示
削除チェック/
■92859
Re[1]: FloorとCeilingの有効桁数に関して
□投稿者/ 魔界の仮面弁士 -
(2019/11/03(Sun) 10:58:27)
2019/11/03(Sun) 11:41:38 編集(投稿者)
■
No92856
(ぬこ さん) に返信
> SingleやDoubleは
> Integerとは異なり、
> 1.99999992
> や3.0000002
> のような綺麗な整数ではない値をとるはずです。
まず、そこの認識が間違っています。
Single や Double は、2 や 3 という整数値なら、誤差なく格納のできる型です。
小数部がジャスト 0 な整数値なら、Single なら 7 桁までは正確に保持できます。
> Dim hh2 As Integer = CInt(Math.Floor(4.0! / 2))
Single や Double は『二進小数』で管理される型なので、
有効桁数の範囲内に納まるなら、2 で割っても誤差は生じません。
十進数は「10」を基数としているため、「1÷10」や「1÷100」を誤差なく管理できます。
でも「1÷3」は、有限桁数においては近似値表現となりますよね。
三進数は「3」を基数としているため、「1÷3」や「1÷9」を誤差なく管理できます。
二進数は「2」を基数としているため、「1÷2」や「1÷4」を誤差なく管理できますが
「1÷10」は、有限桁数において近似値表現となります。
なお、例示された値についてですが、
1.99999992 は Single や Double では正確に表現できないため、Single なら
1.99999988 という近似値(正確には 1.99999988079071044921875 )になってしまうはずです。
そして Double の場合も、やはりピッタリ同じ値は持てません。
1.99999992 に近い範囲で、Double 型で表現可能な値に丸められます。
1.99999991999999915393004812358 … &H3FFFFFFFEA86711A
1.99999991999999937597465304862 … &H3FFFFFFFEA86711B
1.99999991999999959801925797365 … &H3FFFFFFFEA86711C
1.99999991999999982006386289868 … &H3FFFFFFFEA86711D '☆少し小さい値
1.99999992000000004210846782371 … &H3FFFFFFFEA86711E '★少し大きいが、これがもっとも近い
1.99999992000000026415307274874 … &H3FFFFFFFEA86711F
1.99999992000000048619767767377 … &H3FFFFFFFEA867120
1.99999992000000070824228259880 … &H3FFFFFFFEA867121
> 有効桁数のようなものが設定されているからなのでしょうか?
符号ビットと指数部を取り除いた、「仮数部」のみを有効桁として扱うと
Single 型の有効桁数は 二進小数表現で 23+1 桁。十進数に換算すると約 7.225 桁です。
Double 型の有効桁数は 二進小数表現で 52+1 桁。十進数に換算すると約 15.955 桁です。
Integer 型の有効桁数は 二進整数表現で 32-1桁。十進数に換算すると約 9.332 桁で、
UInteger 型の有効桁数は 二進整数表現で 32桁。十進数に換算すると約 9.633 桁です。
Integer という型で表現できる数値は、隣り合う数が常にジャスト 1 だけの差を持ちますよね。
2 の前は 1 ですし、2 の次は 3 です。整数型ゆえ指数部が無いので、
隣り合う値は常に「2 の 0 乗」すなわち 1 となります。
それに対し、Single や Double においては、隣り合う値の間隔が一定ではありません。
その絶対値が 0 に近いほど細かい差を表現でき、
絶対値が大きくなるほど荒くなり、隣の値の差が広がっていきます。
Single 型で表現可能な 2 の周辺値はこんな感じ。
1.99999964237213134765625 … &H3FFFFFFD
1.99999976158142089843750 … &H3FFFFFFE
1.99999988079071044921875 … &H3FFFFFFF
2.00000000000000000000000 … &H40000000 ★ジャスト2
2.00000023841857910156250 … &H40000001
2.00000047683715820312500 … &H40000002
2.00000071525573730468750 … &H3FFFFFF3
Single 型で表現可能な 200万 の周辺値はこんな感じ。
1999999.625 … &H49F423FD
1999999.750 … &H49F423FE
1999999.875 … &H49F423FF
2000000.000 … &H49F42400 ★ジャスト200万
2000000.125 … &H49F42401
2000000.250 … &H49F42402
2000000.375 … &H49F42403
Single 型で表現可能な 20億 の周辺値はこんな感じ。
1999999616 … &H4EEE6B25
1999999744 … &H4EEE6B26
1999999872 … &H4EEE6B27
2000000000 … &H4EEE6B28 ★ジャスト20億
2000000128 … &H4EEE6B29
2000000256 … &H4EEE6B2A
2000000384 … &H4EEE6B2B
Single 型で表現可能な 2兆 の周辺値はこんな感じ。
1999999729664 … &H53E8D4A3
1999999860736 … &H53E8D4A4
1999999991808 … &H53E8D4A5 ★2兆マイナス8192
2000000122880 … &H53E8D4A6 ☆2兆プラス122880
2000000253952 … &H53E8D4A7
2000000385024 … &H53E8D4A8
記事No.92856 のレス /過去ログ160より /
関連記事表示
削除チェック/
■97677
Re[6]: 同時に取得する方法
□投稿者/ 白音 -
(2021/06/25(Fri) 16:05:44)
■
No97673
(魔界の仮面弁士 さん) に返信
これでいいのでしょうか?
private static object Scalar(string selectStr)
{
object obj = null;
string connstr = Properties.Settings.Default.ConnectionString;
using (var connection = new SqlConnection(connstr))
{
using (SqlCommand command = new SqlCommand(selectStr, connection))
{
obj = command.ExecuteScalar();
}
connection.Close();
}
return (obj);
}
記事No.97623 のレス /過去ログ169より /
関連記事表示
削除チェック/
■97680
Re[7]: 同時に取得する方法
□投稿者/ 魔界の仮面弁士 -
(2021/06/25(Fri) 19:30:13)
■
No97677
(白音 さん) に返信
> これでいいのでしょうか?
はい、それでよいと思います。
もし、object 型だとキャストが面倒だというのであれば、
代わりに dynamic 型で受けてみるのも良いかと思います。
最初から型を明示して受け取りたい場合は、先に紹介した Dapper を使うのが便利です。
記事No.97623 のレス /過去ログ169より /
関連記事表示
削除チェック/
<<
0
>>
パスワード/
-
Child Tree
-