Ruby 4.0 リファレンスマニュアル

macro StringValueCStr

[edit]
char * StringValueCStr(VALUE v)

v を String に変換し、その実体の C の文字列へのポインタを返します。 StringValuePtr と同じですが、内容が C の文字列として使えるかも検査します。 Ruby は C より広い範囲の内容を文字列として受け付けるため、この検査が必要になります。返り値は NUL で終端されています。

[PARAM] v:
変換する Ruby のオブジェクトです。呼び出し後は String になります。
[RETURN]
v の実体の C の文字列です。
[EXCEPTION] TypeError:
暗黙の型変換が定義されていないとき。
[EXCEPTION] ArgumentError:
内容が C の文字列として使えないとき。