6. 良い (デバッグしやすい) コードの書き方
6.1 優れたコード:
- コードは正常に動作します
- いくつかのバグ
- 効率的
- 高い可読性
- 高いメンテナンス性
- 明確にメモする
- 完全なドキュメント
一般的なコーディング スキル:
- アサートを使用する
- constを使ってみる
- 適切なコーディング スタイルを開発する
- 必要なコメントを追加する
- コーディングの落とし穴を避けてください。
ここでassertとconstの役割について話しましょう.assert
はassertと同等であり,暴力的な解決策には良いことです.assertのカッコ内が条件を満たさない場合はエラーを報告します,エラーの発生を防ぐ良い方法です。もちろん、使用するときはヘッダー ファイル <assert.h> をインクルードする必要があります。const
const
がポインター変数を変更する場合:
- const を * の左側に配置すると、ポインターが指す内容を変更し、ポインターが指す内容を pointer を介して変更できないようにします
。ただし、ポインター変数自体の内容は変更可能です。 - const を * の右側に配置すると、ポインター変数自体が変更され、ポインター変数の内容は変更できなくなりますが、ポインターが指す内容はポインターを介して
変更できます。
簡単にまとめると、左固定値、右向きです。
strcpy 関数の実装をシミュレートする適切なコードを作成する方法を説明するための例について説明します。
#include<string.h>
#include<stdio.h>
#include<assert.h>
char* my_strcpy(char* dest, const char* src)
{
assert(dest && src);
char* ret = dest;
assert(dest && src);
while (*dest++ = *src++)
{
;
}
return ret;
}
int main()
{
char arr[] = "xxxxxxxxxxx";
char arr2[] = "abcd";
char* ret = my_strcpy(arr, arr2);
printf("%s", ret);
return 0;
}
7. プログラミングでよくあるエラー
7.1 コンパイル
エラー エラー メッセージを直接読んで (ダブルクリック)、問題を解決してください。あるいは経験を積めばできるようになるかもしれません。比較的シンプル。
7.2 リンクされたエラー エラー
メッセージを確認し、主にコード内のエラー メッセージ内の識別子を見つけて、問題を特定します。通常、識別子名は
存在しないか、スペルが間違っています。
7.3 実行時エラー
デバッグを使用して、問題を段階的に特定します。
今日の共有はこれで終わりです、皆さんありがとうございました!!!!