私はCを初めて使用し、部分文字列を取得できるようにする必要があるプロジェクトに取り組んでいますが、不明なプログラムを実行しようとすると、初期化とコアダンプに関するコンパイラの警告が表示されるため、問題が発生しています解決方法。
substring
ソース文字列、開始インデックス、終了インデックスを渡す関数があります。
以下は私の部分文字列関数です。
char *substring(char * src, int from, int to)
{
char * dst = "\0";
strncpy(dst, src+from, to);
return dst;
}
以下は、関数を呼び出す方法です
char * debug = substring(rowReport[bPartyColIndex], 1, 2);
rowReport は MYSQL_ROW であり、bPartyColIndex は MYSQL_ROW から正しい列を参照するための 0 に等しい int です。
現時点では、上記の行に次のコンパイラ警告があります。
warning: initialization makes pointer from integer without a cast
この警告を修正する方法を特定できません。
プログラムを実行しようとすると、strncpy
.