0

どうすればエラースタックにエラーを追加できますか?

これが私が欲しいものの例です

#include <stdio.h>
#include <stdlib.h>

int Div (int a, int b, int * c) {
   if (b == 0) {
       // add to perror: "cannot divide by zero!"
       return 0;
   }
   *c = a / b;
   return 1;
}

int main () {
   int n;
   if (!Div(2, 0, &n)) {
      perror("could not divide");
   }
   return 1;
}
4

2 に答える 2

2

唯一の方法はC標準ライブラリを変更することであり、あなたはそれをしたくありません。

変更libcして使用する場合は、独自の番号を追加できますerrno。ただし、プログラムは、変更された「標準」ライブラリを備えたシステムでのみ正しく機能します。

于 2012-04-22T04:28:51.620 に答える
2

errno新しい値を追加するための標準的な(または私が知っているシステムでは非標準的な)方法はありません。に割り当ててerrno既存の値を使用することはできますが、これは標準ライブラリの一部ではないものには適していません。

于 2012-04-22T04:08:55.490 に答える