1. 简介
C语言作为一种历史悠久且应用广泛的编程语言,至今仍然在操作系统、嵌入式系统、游戏开发等领域占据重要地位。对于C语言初学者来说,掌握一些实用的函数对于提升编程技能至关重要。本文将盘点一些C语言中的实用高效函数,帮助初学者快速入门。
2. 常用输入输出函数
2.1 printf()和scanf()
这两个函数是C语言中最常用的输入输出函数,用于格式化输出和输入。
#include <stdio.h>
int main() {
int a = 10;
float b = 3.14;
printf("a = %d, b = %.2f\n", a, b);
scanf("%d %f", &a, &b);
return 0;
}
2.2 puts()和gets()
这两个函数分别用于输出字符串和从标准输入读取字符串。
#include <stdio.h>
int main() {
char str[100];
puts("请输入一个字符串:");
gets(str);
printf("输入的字符串是:%s\n", str);
return 0;
}
注意:gets()函数存在安全隐患,建议使用fgets()函数替代。
3. 字符串处理函数
3.1 strlen()
用于计算字符串的长度。
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello, World!";
printf("字符串长度:%lu\n", strlen(str));
return 0;
}
3.2 strcpy()
用于复制字符串。
#include <stdio.h>
#include <string.h>
int main() {
char src[] = "Hello, World!";
char dest[100];
strcpy(dest, src);
printf("dest = %s\n", dest);
return 0;
}
3.3 strcmp()
用于比较两个字符串。
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello";
char str2[] = "World";
int result = strcmp(str1, str2);
if (result == 0) {
printf("两个字符串相等\n");
} else if (result > 0) {
printf("str1 > str2\n");
} else {
printf("str1 < str2\n");
}
return 0;
}
4. 数学函数
4.1 sin()和cos()
用于计算正弦和余弦值。
#include <stdio.h>
#include <math.h>
int main() {
double x = 3.14;
printf("sin(%.2f) = %.2f\n", x, sin(x));
printf("cos(%.2f) = %.2f\n", x, cos(x));
return 0;
}
4.2 sqrt()
用于计算平方根。
#include <stdio.h>
#include <math.h>
int main() {
double x = 9;
printf("sqrt(%.2f) = %.2f\n", x, sqrt(x));
return 0;
}
5. 时间处理函数
5.1 time()
用于获取当前时间。
#include <stdio.h>
#include <time.h>
int main() {
time_t t = time(NULL);
printf("当前时间:%ld\n", t);
return 0;
}
5.2 localtime()
用于将时间转换为本地时间。
#include <stdio.h>
#include <time.h>
int main() {
time_t t = time(NULL);
struct tm *tm = localtime(&t);
printf("本地时间:%d-%d-%d %d:%d:%d\n", tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec);
return 0;
}
6. 动态内存分配函数
6.1 malloc()
用于分配内存。
#include <stdio.h>
#include <stdlib.h>
int main() {
int *p = (int *)malloc(10 * sizeof(int));
if (p == NULL) {
printf("内存分配失败\n");
return 1;
}
for (int i = 0; i < 10; i++) {
p[i] = i;
}
for (int i = 0; i < 10; i++) {
printf("%d ", p[i]);
}
printf("\n");
free(p);
return 0;
}
6.2 realloc()
用于重新分配内存。
#include <stdio.h>
#include <stdlib.h>
int main() {
int *p = (int *)malloc(10 * sizeof(int));
if (p == NULL) {
printf("内存分配失败\n");
return 1;
}
for (int i = 0; i < 10; i++) {
p[i] = i;
}
p = (int *)realloc(p, 20 * sizeof(int));
if (p == NULL) {
printf("内存重新分配失败\n");
return 1;
}
for (int i = 0; i < 20; i++) {
p[i] = i;
}
for (int i = 0; i < 20; i++) {
printf("%d ", p[i]);
}
printf("\n");
free(p);
return 0;
}
7. 总结
以上盘点了C语言中一些实用的函数,这些函数对于C语言初学者来说至关重要。通过学习和运用这些函数,可以帮助初学者快速提升编程技能。希望本文对您有所帮助!
