TIL

Today I Learned. 知ったこと、学んだことを書いていく

2018-01-01から1ヶ月間の記事一覧

ポインタとは - C言語

わかりやすいC 入門編の「17.2 ポインタとは」を読んでのメモみたいなもの アドレスを格納するためのもの。 ポインタにはアドレスのみ格納可能 間接参照という機能を持つ 変数宣言時には*を使う 間接参照(*)によって、格納しているアドレスの変数とみなすこ…

ベースレジスタとインデックスレジスタ

プログラムはなぜ動くのか を読んでいて、ベースレジスタとインデックスレジスタを使うことによって、配列を実現していると書いてあって「なるほど〜」となったため、メモしておく。 まずは、本に書いてあることを自分なりの言葉で書いてみる まとめ わかっ…

アドレスとは - C言語

わかりやすいC 入門編の「17.1 アドレスとは」を読んでのメモみたいなもの アドレスとは、メモリ内の位置のこと。 メモリは1バイトごとに区切られている。また、それぞれの区切りごとに0から順に番号が振られている。この番号をアドレスという。アドレスは16…

Vimのインクリメント - Vim

vim

ちょっと感動したので、書いておく 0xfをC-aでインクリメントしたら、0x10になって「おおお!!!」ってなったってだけ ためしに、0b1をインクリメントしてみたら、0b10になって、また、「おおお!!!」ってなった ちょっと感動

LINQでGroupBy - VB.NET

LINQについて知るには 型推論 匿名クラス ラムダ式 を知っておかないといけない こちらのサイトのソースをそのまま、コピペしたみたいな感じになっている... 理解して書かないとダメです... ''' <summary> ''' 理解してないから、まとめないと!!! ''' 参考サイト '</summary>…

fopen(3)とfputc(3)でファイルに文字(バイト)を書き込む - C言語

ふつうのLinuxプログラミング でfopen(3)とfputc(3)が出てきたので、遊んでみた fopen(3)の定義を見てみる #include <stdio.h> FILE * fopen(const char * restrict path, const char * restrict mode); ファイルパスpathからストリームを作り、そのFILEポインタを返</stdio.h>…

システムコールでのファイルの操作 - C言語

ファイルディスクリプタとは 標準入力、標準出力、標準エラー出力 ストリームの読み書き read(2) write(2) open(2) close(2) 参考文献 ファイルディスクリプタとは プログラムからストリームを扱うときに使う識別子のようなもの。プログラムから見るとただの…

source .vimrc はやらない!!!

Vim 内のコマンドで :source ~/.vimrc ってやること!!! Bash 上で source ~/.vimrc ではない!! .vimrcの内容を変更したから、反映しよーって思って、なんとなく Bash 上で source .vimrcをしていたけど、これは意味ないし、できないらしい。 .vimrcはVi…

文字列 - C言語

C

C言語では文字列型というものはなく、char(文字)型の配列で表現する。 宣言は以下のようになる char str1[]; また、文字列の最後の要素には必ずヌル文字(終端文字 '\0')が入っていることに注意する。 終端文字が入っているため、"Hello"という文字を表す文字…

SqlCommand.Parameters.Addで設定する値の型について - VB.NET

Object型でも行けた ということはDBNull.Value(Object型)を返すメソッドが使えるということ Dim val1 as Object = "hello" sqlCmd.Parameters.Add("@PARAM1", SqlDbType.Char).Value = val1 sqlCmd.Parameters.Add("@PARAM2", SqlDbType.Int).Value = val2 …

sizeof演算子 - C言語

sizeof演算子を使うことで配列の全体のバイト数を知ることができる。 charの配列(string)の場合、文字列のバイト数を知ることができる sizeofの結果を一旦、int型の変数に入れないとprintfでは出力できなかった。 問題のソース // sizeof_test.c #include <stdio.h> i</stdio.h>…

データが Null です。このメソッド、またはプロパティは Null 値で呼び出せません。 - VB.NET

SQLを実行して、結果を取得しようとしたときに、このエラーが発生した。 データベースを見てみると、確かに、NULLになっている。 でも、値がNULLの列を取得しようとしただけでエラーになるってどういうこと!? このサイトで英訳すると、 Data is Null. This…

年月日から日付を生成 - SQLServer

SQLServer 2012以降で年月日から日付を生成する方法 DATEFROMPARTSを使う SELECT DATEFROMPARTS(1998, 3, 24) 実行結果 1998/03/24 参考文献 年、月、日 から日付型に変換する - お だ のスペース

現在日付を取得 GETDATE() - SQLServer

GETDATE()を使う SELECT GETDATE() 参考文献 GETDATE (Transact-SQL)

Nヶ月前の日付 - SQLServer

DATEADD(month, N, 日付) 1ヶ月前の日付を取得 SELECT DATEADD(month, -1, GETDATE()) 参考文献 Nヶ月後、Nヶ月前の日付を計算する方法[SQL Server] : バヤシタ

文字列データまたはバイナリ データが切り捨てられます。 っていうエラー

SQLServer 2012 でデータをインポートしようとしたら 文字列データまたはバイナリ データが切り捨てられます。 というエラーが出てしまった。 例:カラムの定義で CHAR(4) となっているカラムに 5 ケタ以上のデータを入れようとしたときに出るエラーらしい。…

exit関数 - C言語

exit関数はプログラムを終了するときに使う #include <stdlib.h> int exit(int status) statusに 0 以外の値が渡されたときには異常終了であることを表す。 参考文献 C言語関数辞典 - exit C言語 プログラムの正常終了 - stdlib.h - [ exit ] | 勇躍のゴミ箱 この本を</stdlib.h>…

sender と e - VB.NET

Object型の snder とEventArgs型の e sender イベントを発生させたオブジェクト e イベントに関連する情報 1つのプロシージャで複数のイベントを処理できるため、どのオブジェクトによってイベントが発生したのかを判断するときに sender オブジェクトを使用…

右上の閉じるボタンを押下不可にする - VB.NET

''' <summary> ''' 右上の閉じるボタンを押下不可にする ''' </summary> Protected Overrides ReadOnly Property CreateParams() As System.Windows.Forms.CreateParams Get Const CS_NOCLOSE As Integer = &H200 Dim myCreateParams As System.Windows.Forms.CreateParams = My…

RemoveHandlerとAddHandler - VB.NET

それぞれ、イベントハンドリングを有効にしたり、無効にしたりすることができる。 イベントの無効化 RemoveHandler イベント名, AddressOf ハンドルを無効にするメソッド名 イベントの有効化 AddHandler イベント名, AddressOf ハンドルを有効にするメソッド…

集約例外ハンドラを使ってみた - VB.NET

エントリポイントについてはここに書いた VB.NETでの例外処理についてはここに書いた アプリケーションフレームワークを無効にしてしまうと、My.Application.ApplicationContextが使えなくなるため、ApplicationEventsを使う方法がいいかも。My.Application.…

Application.Runとは - VB.NET

少し調べたのでメモ Application.Run(New From1)は、Form1内の処理を実行するという意味? メッセージ・ループ処理を実行する Windowsアプリケーションの実行の仕組み Windowsメッセージ(処理実行の単位)を順次処理(メッセージ・ループ処理)することによって…

STAThreadとは - VB.NET

エントリポイントに記述されているSTAThreadについてのメモ エントリポイントには必要な記述 シングルスレッドで動作していることを示す記述 Module Program <STAThread()> _ Sub Main() Application.EnableVisualStyles() Application.SetCompatibleTextRenderingDefault</stathread()>…

エントリポイントを作成する - VB.NET

まず、エントリポイントとは、アプリケーションを起動したときに最初に実行されるプログラムのこと。 VB.NETではMainメソッドがエントリポイントとなっている。 でも、Windowsフォームアプリケーションのプロジェクトでは、コンパイラによって、自動で作成さ…

VB.NETの例外処理 - VB.NET

例外処理について調べてみた時の走り書き! Javaには業務エラーを処理する検査例外があるので半ば強制的に例外をキャッチなりスローしなければいけませんが、.Net にはJavaの検査例外にあたるものがないので、業務エラーは原則戻り値で処理する設計になって…

gccコマンドで invalid active developer path っていうエラーが出たときの対処

gccでC言語のプログラムをコンパイルしようとしたら以下のようなエラーが出た $ gcc hello.c xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun x…

DateTimePickerで日付が選択されたときのイベント - VB.NET

DateTimePickerで日付が選択されたときに発生するイベントは CloseUpイベント となっている ※ ValueChangedイベントだと、月を変更した時もイベントが発生してしまうため 最初は ValueChanged イベントを使っていたため、動作がおかしくなってしまった...

日付を比較する Date.Compare() - VB.NET

2018/1/9(火) 18:45 修正 日付の比較であれば、Date.Compareでよかったのかも 日付を比較するにはDate.Compareメソッドを使う。 Compare(t1, t2)となっている場合 t1 < t2 の場合、負の数 t1 = t2 の場合、0 t1 > t2 の場合、正の数 例 今日の日付 と 8月31…

DataGridViewのある列の値を小数点第2位までしか表示させないようにする

以下のような感じで表示させたいとき 123.45 DataGridViewColumnのDefaultCellStyleのFormatに書式を設定する DataGridView1.Columns(0).DefaultCellStyle.Format = "N2" 参考文献 DataGridViewの小数点以下表示に関して