10月30周六区区小结

本文介绍了C语言中getchar与scanf函数在处理输入时的区别,强调了getchar在处理行缓冲模式下的作用。同时,文章还探讨了指针的概念,包括如何使用指针变量和解引用操作符来修改变量的值。通过实例展示了如何获取和打印变量的内存地址。内容适合初学者,旨在加深对C语言输入函数和指针的理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

别熬夜!
上周所提到的 getchar 和 scanf函数都为输入函数 从缓冲区获取和清理缓存区的问题,这周科班的同学们应该接触到了,比如这道题:

#include<stdio.h>

int main()
{
	int i,n,letter,blank,digit,other;
	char ch;
	letter=blank=digit=other=0;
	
	scanf("%d",&n);
	ch = getchar(); //获取字符
	
	for(i=1;i<=n;i++){
		ch=getchar();
		if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z'){
			letter++;
		}else if(ch==' '||ch=='\n'){
			blank++;
		}else if(ch>='0'&&ch<='9'){
			digit++;
		}else{
			other++;
		}
	}
	printf("letter = %d, blank = %d, digit = %d, other = %d",letter,blank,digit,other);
	
	return 0;
}

注意,此处只能用getchar扫描字符,而不能用scanf,否则scanf则会一并扫描最后的回车
引入这个与我理解相同的人所描述的:


所谓行缓冲模式, 是指一个以回车键作为结束信号,从而结束接受键盘输入过程,并刷新键盘缓冲区,此时缓冲区的内容为 [ .....\n ]
当诸如getchar(),scanf()之类的函数调用时,首先要读取键盘缓冲区, 如果为空则进入行缓冲模式, 行缓冲结束后,依次读取相应字符,getchar()取一个,scanf()按格式取, 之后返回. 如果不空则依次读取相应字符后,之后返回.

初识 地址
Pa  将存放地址的变量  叫做指针变量
&取地址操作符
*pa 解引用操作符,通过pa的地址找到a   *是说明pa是指针变量
可通过*pa=某 重新定义a的值
 

#include <stdio.h>
int main ()
{
	
	int a = 10;
	printf("%p\n",&a);
	int *pa = &a;

	return 0;
}

 以下是我偶然找到的变量指针和地址的总结,在此一起分享下

 以上仅是初识,还需要后续的实践

有错误请指教!

 

内容概要:本文档定义了一个名为 `xxx_SCustSuplier_info` 的视图,用于整合和展示客户(Customer)和供应商(Supplier)的相关信息。视图通过连接多个表来获取组织单位、客户账户、站点使用、位置、财务代码组合等数据。对于客户部分,视图选择了与账单相关的记录,并提取了账单客户ID、账单站点ID、客户名称、账户名称、站点代码、状态、付款条款等信息;对于供应商部分,视图选择了有效的供应商及其站点信息,包括供应商ID、供应商名称、供应商编号、状态、付款条款、财务代码组合等。视图还通过外连接确保即使某些字段为空也能显示相关信息。 适合人群:熟悉Oracle ERP系统,尤其是应付账款(AP)和应收账款(AR)模块的数据库管理员或开发人员;需要查询和管理客户及供应商信息的业务分析师。 使用场景及目标:① 数据库管理员可以通过此视图快速查询客户和供应商的基本信息,包括账单信息、财务代码组合等;② 开发人员可以利用此视图进行报表开发或数据迁移;③ 业务分析师可以使用此视图进行数据分析,如信用评估、付款周期分析等。 阅读建议:由于该视图涉及多个表的复杂连接,建议读者先熟悉各个表的结构和关系,特别是 `hz_parties`、`hz_cust_accounts`、`ap_suppliers` 等核心表。此外,注意视图中使用的外连接(如 `gl_code_combinations_kfv` 表的连接),这可能会影响查询结果的完整性。
### 如何在 ArcMap 中执行缓冲区合并(Union)操作 #### 使用 Buffer 工具创建缓冲区 为了实现缓冲区的创建,在 ArcMap 中可以利用 `Buffer` 工具来完成这一过程。具体来说,通过访问工具箱下的分析工具找到 `Buffer (缓冲区)` 功能[^3]。 ```python import arcpy # 设置工作空间环境 arcpy.env.workspace = "C:/data/your_workspace.gdb" # 输入要素类路径 input_features = "network" output_feature_class = "buffered_network" # 创建缓冲区 arcpy.Buffer_analysis(in_features=input_features, out_feature_class=output_feature_class, buffer_distance_or_field="230 Meters", dissolve_option="NONE") ``` 此代码片段展示了如何设置参数并调用 `Buffer_analysis` 函数以生成指定距离的缓冲区。注意这里的融合选项被设为 `"NONE"` 表明不会立即进行任何类型的融合;这一步骤仅用于生成独立的缓冲多边形对象。 #### 执行 Union 操作 一旦有了单独的缓冲区之后,下一步就是把这些重叠或多部分的几何图形组合成单一特征。为此目的可采用 `Union` 工具: ```python from arcpy import analysis as ana # 定义要联合的对象列表 union_input_layers = ["buffered_network"] # 输出联合后的结果文件名 union_output_layer = "united_buffer_zones" # 调用 Union 方法来进行聚合 ana.Union(in_features=union_input_layers, out_feature_class=union_output_layer, join_attributes="ALL", cluster_tolerance="", gaps="NO_GAPS") ``` 上述 Python 代码说明了怎样配置 `Union` 参数以及实际运行该命令的方式。特别指出的是,当 `join_attributes` 设定为 `"ALL"` 时意味着保留所有原始属性信息;而 `gaps` 参数设定为 `"NO_GAPS"` 则指示不希望最终输出存在间隙区域。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值