Linux(ubuntu)(c语言程序)

news/2024/9/19 7:16:11 标签: c语言, 开发语言

一、Vs设置使用

1.应用程序中打开Vscode,弹出的界面直接划到最后点击mark done

2.更改语言,找最左面扩展,搜索Chinese,给出的第一个安装

3.新建文件,因为c语言开发应该以.c结尾,输入名字main.c(代表主函数,.c结尾能编译)

4.右下角弹出安装c/c++,点击安装

5.使用头文件实现hello world输出,首先新建文件helloworld.h

6.在helloworld.h中输入

#ifndef __HELLOWORLD_H_
#define __HELLOWORLD_H_

void say_hello();

#endif

#ifndef __HELLOWORLD_H_//先测试__HELLOWORLD_H_是否被宏定义过

#define __HELLOWORLD_H_ //如果__HELLOWORLD_H_没有被宏定义过,定义__HELLOWORLD_H_

void say_hello();//声明这个函数

#endif      //#ifndef和#endif必须成对使用

7.新建文件helloworld.c

8.在helloworld.c中输入

#include "helloworld.h"
#include <stdio.h>

void say_hello(){
    printf("hello world\n");
}

helloworld.c负责实现say_hello()函数,需要先引入头文件,对函数进行声明

9.在main.c中输入

#include "helloworld.h"

int main(){

    say_hello();
    return 0;
}

main函数是程序的入口,通过引入头文件,实现say_hello()函数

10.这时代码已经写完,但是运行可能会报错。这是因为默认只能执行一个.c文件,而我们需要helloworld.c和main.c同时编译。

解决方法:左侧点击.vscode,点击tasks.json,其中${file}这句话代表一个c文件,在这句话前面加上//进行注释,往后添加"*.c",(记得加引号和逗号)。这句话*代表任何,也就是任何末尾为.c的文件。

11.最后补充一句,每次写完一个代码都需要保存,helloworld.h,helloworld.c,main.c都需要保存(ctrl+s),最后执行,执行结果在下面终端上显示


http://www.niftyadmin.cn/n/5665199.html

相关文章

10年408考研真题-数据结构

23.[2010统考真题]若元素 a,b,c,d,e,f 依次进栈&#xff0c;允许进栈、退栈操作交替进行&#xff0c;但不允许连续3次进行退栈操作&#xff0c;不可能得到的出栈序列是(D)。 A.dcebfa B.cbdaef C.bcaefd D.afedcb 解析&#xff1a;直接看D选项&#xff0c…

云原生链路观测平台 openobserve + fluent-bit,日志收集

grpc-opentracing https://github.com/grpc-ecosystem/grpc-opentracing openobserve fluent-bit 为啥会选择这个组合 一个 rust 写的一个是c写的&#xff0c;性能和内存方面不用担心&#xff0c;比java 那套好太多了 openobserve 文档 &#xff1a;https://openobserve.ai/…

[语言月赛 202408] 因友情而终结

[语言月赛 202408] 因友情而终结 题目背景 友情是什么&#xff1f; 风不知道。 但当友情让爱情出现猜忌 风选择因爱情而终结友情 题目描述 字符串 S S S 是一个仅由英文小写字母构成的串。现在&#xff0c;你可以对字符串 S S S 执行任意次如下操作&#xff1a; 选择 S S…

深入理解Spring中请求作用域的数据存储:ThreadLocal还是Spring容器?

深入理解Spring中请求作用域的数据存储&#xff1a;ThreadLocal还是Spring容器&#xff1f; 目录 深入理解Spring中请求作用域的数据存储&#xff1a;ThreadLocal还是Spring容器&#xff1f; 一、引言 二、ThreadLocal的作用与原理 三、Spring中的请求作用域 四、ThreadL…

软件编程随想

已经做了16年左右的软件开发&#xff0c;从最初的Delphi开发&#xff0c;到后来的Web开发&#xff08;.net)再到Java Web&#xff08;Spring MCV,SpringBoot&#xff09;开发&#xff0c;以后Python&#xff0c;NodeJS等开发&#xff0c;做了这么多年&#xff0c;全部是以解决单…

Android状态栏StatusBar颜色修改

<!-- 文字及图标颜色&#xff1a;true为深色&#xff0c;false为浅色 --> <item name"android:windowLightStatusBar">true</item> <!-- 背景色 --> <item name"android:statusBarColor">?android:attr/colorPrimary</i…

解密.bixi、.baxia勒索病毒:如何安全恢复被加密数据

导言 在数字化时代&#xff0c;数据安全已成为个人和企业面临的重大挑战之一。随着网络攻击手段的不断演进&#xff0c;勒索病毒的出现尤为引人关注。其中&#xff0c;.bixi、.baxia勒索病毒是一种新型的恶意软件&#xff0c;它通过加密用户的重要文件&#xff0c;迫使受害者支…

QT 带箭头的控件QPolygon

由于对当前项目需要绘制一个箭头控件&#xff0c;所以使用了QPainter和QPolygon来进行绘制&#xff0c;原理就是计算填充&#xff0c;下面贴出代码和效果图 这里简单介绍下QPolygon QPolygon是继承自 QVector<QPoint>那么可以很简单的理解为&#xff0c;他就是一个点的…