概述
文章目录
- 一、创建新用户
- 二、C程序练习
- 三、assert()理解
- 四、不同Linux系统之间文件传输
- 四、参考文献
一、创建新用户
创建用户:
sudo useradd -m 用户名
设置密码:
sudo passwd 用户名
给予用户sudo权限(后面文件传输时需要):
#切换到root用户
sudo su
#编辑配置文件
vi /etc/sudoers
#增加配置(按i开始编辑,Esc退出编辑,:wq!保存强制退出), 在打开的配置文件中,找到root ALL=(ALL) ALL, 在下面添加一行
#其中xxx是你要加入的用户名称
xxx ALL=(ALL) ALL
二、C程序练习
1.创建一个c程序
vi 程序名.c
2.进入vi编辑模式,按i开始写代码
#include <assert.h>
#include <stdio.h>
int main()
{
int a;
char str[50];
printf("请输入一个整数值: ");
scanf("%d", &a);
assert(a >= 10);
printf("输入的整数是: %dn", a);
printf("请输入字符串: ");
scanf("%s", str);
assert(str != NULL);
printf("输入的字符串是: %sn", str);
return(0);
}
3.按Esc退出编辑模式,输入:wq(表示保存并退出)
4.编译程序
第一个程序名.c是刚才写的代码,第二个程序名是代码结果输出位置
gcc 程序名.c -o 程序名
5.运行程序
上一步的二的一个程序名
./程序名
三、assert()理解
简介
C 标准库的 assert.h头文件提供了一个名为 assert 的宏,它可用于验证程序做出的假设,并在假设为假时输出诊断消息。
库宏
assert.h头文件定义了唯一的函数:assert()
void assert(int expression) 这实际上是一个宏,不是一个函数,可用于在 C 程序中添加诊断。
C 库宏 - assert()
描述:C 库宏 void assert(int expression) 允许诊断信息被写入到标准错误文件中。换句话说,它可用于在 C 程序中添加诊断。
声明:void assert(int expression);
expression :这可以是一个变量或任何 C 表达式。如果 expression 为 TRUE,assert() 不执行任何动作。如果 expression 为 FALSE,assert() 会在标准错误 stderr 上显示错误消息,并中止程序执行。
返回值:无
实例:
以上面代码为例子
#include <assert.h>
#include <stdio.h>
int main()
{
int a;
char str[50];
printf("请输入一个整数值: ");
scanf("%d", &a);
assert(a >= 10);
printf("输入的整数是: %dn", a);
printf("请输入字符串: ");
scanf("%s", str);
assert(str != NULL);
printf("输入的字符串是: %sn", str);
return(0);
}
如果输入的整数大于等于10,输入的字符串不为空,程序会继续运行;如果条件不满足程序终止
四、不同Linux系统之间文件传输
如在Ubuntu系统与树莓派系统之间文件传输
scp命令介绍
Linux scp 命令用于 Linux 之间复制文件和目录。
scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。
scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。
语法
scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 [...] [[user@]host2:]file2
实例
从本地复制到远程:
scp local_file remote_username@remote_ip:remote_folder
或者
scp local_file remote_username@remote_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file
第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;
应用(将树莓派刚才创建的.c文件传输到Ubuntu下):
sudo scp assert.c xjc@192.168.43.123:/home/xjc/
可能出现连接超时问题(虚拟机可以ping通树莓派,树莓派无法ping通虚拟机),此时需要把将VMware的网络连接模式修改为 桥接模式,更改完之后如果是使用SSH客户端(Putty、Xshell类)去连接Ubuntu的,要重新连接,IP地址已经改变
然后再执行scp命令,即可成功上传
四、参考文献
C语言断言assert-从源码解析到熟练使用
Linux scp命令
虚拟机可以ping通树莓派,树莓派无法ping通虚拟机
最后
以上就是花痴溪流为你收集整理的树莓派初步使用的全部内容,希望文章能够帮你解决树莓派初步使用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复