找到 1356 篇文章 关于 C 语言

如何在 C/C++ 中检查变量是否为 NULL?

Arjun Thakur
更新于 2019年7月30日 22:30:26

24K+ 次浏览

在 C 或 C++ 中,没有特殊的方法来比较 NULL 值。我们可以使用 if 语句来检查变量是否为空。这里我们将看到一个程序。我们将尝试以读取模式打开一个系统中不存在的文件。因此,函数将返回空值。我们可以使用 if 语句检查它。查看代码以更好地理解。示例代码 #include <stdio.h> int main() { //尝试以读取模式打开一个不存在的文件 FILE *fp; fp = fopen("hello.txt", "r"); if(fp == NULL) ... 阅读更多

C语言中的指定初始化器

Arjun Thakur
更新于 2019年7月30日 22:30:26

780 次浏览

在 C90 标准中,我们必须按照固定的顺序初始化数组,例如初始化索引位置 0、1、2 等。从 C99 标准开始,他们在 C 中引入了指定的初始化功能。在这里,我们可以按照随机顺序初始化元素。可以使用数组索引或结构成员进行初始化。此扩展未在 GNU C++ 中实现。如果我们指定某个索引并设置某个值,则它将如下所示 -int arr[6] = {[3] = 20, [5] = 40}; 或 int arr[6] = {[3]20, [5]40};这等效于:int arr[6] = {0, 0, ... 阅读更多

C语言文件处理基础

Chandu yadav
更新于 2020年11月18日 05:06:31

1K+ 次浏览

在这里,我们将看到 C 语言中的一些基本文件处理操作。这些操作如下所示:写入文件读取文件追加到文件写入文件查看代码以了解如何在文件中写入内容示例代码 #include <stdio.h> int main() { FILE *fp; char *filename = "sample.txt"; char *content = "Hey there! You've successfully created a file with content in c programming language."; /* 打开写入 */ fp = fopen(filename, "w"); if( fp == NULL ) { printf("%s: failed to open. ", filename); return ... 阅读更多

C++中的名称改编和extern “C”

Nishtha Thakur
更新于 2019年7月30日 22:30:26

952 次浏览

在 C++ 中,我们可以使用函数重载功能。使用此功能,我们可以创建具有相同名称的函数。唯一的区别是参数的类型和参数的数量。这里不考虑返回类型。现在问题来了,C++ 如何区分目标代码中的重载函数?在目标代码中,它通过添加有关参数的信息来更改名称。这里应用的技术称为名称改编。C++ 没有标准化的名称改编技术。因此,不同的编译器使用不同的技术。这是一个名称改编的示例。重载函数 ... 阅读更多

C/C++中数值常量前缀0的含义是什么?

Smita Kapse
更新于 2019年7月30日 22:30:26

134 次浏览

有时我们可能会看到一些数值文字,前面带有 0。这表示该数字是八进制数。因此,八进制文字开头带有 0。例如,如果八进制数为 25,则我们必须写 025。示例 #include <stdio.h> int main() { int a = 025; int b = 063; printf("25(八进制)的十进制是 %d", a); printf("63(八进制)的十进制是 %d", b); }输出25(八进制)的十进制是 21 63(八进制)的十进制是 51

C库中的wprintf()和wscanf()

Anvi Jain
更新于 2019年7月30日 22:30:26

1K+ 次浏览

在这里,我们将看到 C 中的 wprintf() 和 wscanf() 函数。这些是宽字符的 printf() 和 scanf() 函数。这些函数存在于 wchar.h 中。wprintf() 函数用于将宽字符打印到标准输出。宽字符串格式可能包含以 % 符号开头的格式说明符,这些说明符将被传递给 wprintf() 的变量的值替换。语法如下所示 -int wprintf (const wchar_t* format, ...);此函数采用格式。此格式是指向将写入的以 null 结尾的宽字符串的指针,... 阅读更多

C语言圣诞树程序

Nishtha Thakur
更新于 2019年7月30日 22:30:26

955 次浏览

在这里,我们将看到一个有趣的问题。在这个问题中,我们将看到如何随机打印圣诞树。因此,树木将像圣诞树灯一样闪烁。要打印圣诞树,我们将打印各种尺寸的金字塔,一个接一个地放在下面。对于装饰性叶子,从给定的字符列表中打印随机字符。高度和随机性是可调整的。在这里,生成一棵树后,整个屏幕将被清除,然后再次生成,这就是为什么它看起来像闪烁的树。示例 #include <stdio.h> #include <stdlib.h> #include <time.h> #include <unistd.h> #define REFRESH_RATE 40000 #define RANDOM_NESS 5 // ... 阅读更多

为什么C语言需要严格别名?

Smita Kapse
更新于 2019年7月30日 22:30:26

140 次浏览

在这里,我们将看到为什么我们应该在 C 中使用严格别名。在讨论那部分之前,让我们看看一段代码,并尝试分析输出。示例 #include <stdio.h> int temp = 5; int *var = &temp; int my_function(double *var) { temp = 1; *var = 5.10; //这将更改temp的值 return (temp); } main() { printf("%d", my_function((double*)&temp)); }输出1717986918如果我们调用函数 my_function,则它将返回 1。我们也可以使用 my_function((double*)&temp) 调用它。这应该返回 1,但在这里我们可以看到它返回了其他内容。此代码仅旨在返回常量 1。要解决此问题,我们可以使用严格 ... 阅读更多

使用多线程在C语言中进行线性搜索

Anvi Jain
更新于 2019年7月30日 22:30:26

788 次浏览

在这里,我们将了解如何将多线程概念应用于在数组中搜索一个元素。这里的方法非常简单。我们将创建一些线程,然后将数组分成不同的部分。不同的线程将在不同的部分进行搜索。之后,找到元素后,启用标志来标识它。示例 #include <stdio.h> #include <pthread.h> #define MAX 16 #define THREAD_MAX 4 int array[MAX] = { 1, 5, 7, 10, 12, 14, 15, 18, 20, 22, 25, 27, 30, 64, 110, 220 }; int key = 18; int flag = 0; //标志指示项目已找到 ... 阅读更多

使用线程同步按顺序打印数字

Nishtha Thakur
更新于 2019年7月30日 22:30:26

615 次浏览

我们将学习如何使用不同的线程以正确的顺序打印数字。我们将创建n个线程,然后同步它们。其思想是,第一个线程将打印1,第二个线程将打印2,以此类推。当一个线程尝试打印时,它将锁定资源,因此任何线程都不能使用该部分。示例 #include <pthread.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; pthread_cond_t* cond = NULL; int threads; volatile int count = 0; void* sync_thread(void* num) { //此函数用于同步线程 int thread_number ... 阅读更多

广告