写出看起来专业的C代码,除了规范的变量/函数命名,还需要熟练使用C语言的标准库。当为了数组拷贝自己编写一个for循环的时候(可以用memcpy),其他读者看到这种代码,肯定会感叹程序员的C语言基础不行(为了优化空间除外)。
int printf(const char *format, ...);
printf("Hello, %s!\n", "world");
int scanf(const char *format, ...);
int age;
scanf("%d", &age);
3、fprintf:将格式化的数据输出到文件。
int fprintf(FILE *stream, const char *format, ...);
这个函数与 printf 类似,但将输出定向到文件而不是标准输出。
4、fscanf:从文件中读取格式化的数据。
int fscanf(FILE *stream, const char *format, ...);
5、fopen:打开文件以进行读写操作。
FILE *fopen(const char *filename, const char *mode);
FILE *file = fopen("example.txt", "r");
int fclose(FILE *stream);
7、fgets:从文件中读取一行数据。
char *fgets(char *s, int size, FILE *stream);
这个函数从文件中读取一行文本数据。
int fputs(const char *s, FILE *stream);
这个函数将字符串写入文件。
int fgetc(FILE *stream);
这个函数用于逐字符读取文件内容。
int fputc(int c, FILE *stream);
这个函数将一个字符写入文件。
void rewind(FILE *stream);
这个函数用于将文件指针重新设置到文件的开头。
int feof(FILE *stream);
void *malloc(size_t size);
int *arr = (int *)malloc(5 * sizeof(int));
void *calloc(size_t num_elements, size_t element_size);
int *arr = (int *)calloc(5, sizeof(int));
void *realloc(void *ptr, size_t size);
arr = (int *)realloc(arr, 10 * sizeof(int));
void free(void *ptr);
free(arr);
int rand(void);
int random_number = rand();
void srand(unsigned int seed);
srand(42);
int abs(int n);
int absolute_value = abs(-5);
int atoi(const char *str);
int number = atoi("42");
double atof(const char *str);
double pi = atof("3.14159");
void exit(int status);
exit(0); // 正常退出
11、system:执行系统命令。
int system(const char *command);
system("ls -l");
void qsort(void *base, size_t num_elements, size_t element_size, int (*compare_function)(const void *, const void *));
int compare(const void *a, const void *b) {
return (*(int *)a - *(int *)b);
}
int arr[] = {5, 2, 9, 1, 5};
qsort(arr, 5, sizeof(int), compare);
1、strcpy:将一个字符串复制到另一个字符串。
char *strcpy(char *dest, const char *src);
char destination[20];
char source[] = "Hello, world!";
strcpy(destination, source);
2、strcat:将一个字符串附加到另一个字符串。
char *strcat(char *dest, const char *src);
char str1[20] = "Hello, ";
char str2[] = "world!";
strcat(str1, str2);
3、strlen:计算字符串的长度。
size_t strlen(const char *s);
char str[] = "Hello";
size_t length = strlen(str);
int strcmp(const char *s1, const char *s2);
char str1[] = "apple";
char str2[] = "banana";
int result = strcmp(str1, str2);
int strncmp(const char *s1, const char *s2, size_t n);
char str1[] = "apple";
char str2[] = "appetizer";
int result = strncmp(str1, str2, 3);
char *strchr(const char *s, int c);
char str[] = "Hello, world!";
char *result = strchr(str, 'w');
char *strstr(const char *haystack, const char *needle);
char str[] = "The quick brown fox";
char *result = strstr(str, "brown");
char *strtok(char *str, const char *delimiters);
char str[] = "apple,banana,grape";
char *token = strtok(str, ",");
while (token != NULL) {
printf("%s\n", token);
token = strtok(NULL, ",");
}
小 结
这些函数提供了对字符串、内存块和文件的常见操作,是C语言编程中的重要工具。通过使用这些函数,您可以高效地处理输入输出、内存分配和字符串操作等任务,从而提高效率并简化代码。C语言标准库的强大之处在于其简洁性和灵活性,加上标准库的支持,使其成为许多开发人员的首选编程语言之一。
希望本文能够帮助您更好地理解和利用C语言标准库中的函数,提高您的C编程技能。
END
→点关注,不迷路←