Python自動生成.c .h 文件模板

# Auto File Creator for C.

# Author:J.Hu

# Date: 2014/10/13

#! /usr/bin/python

# import file

import os

import string

import time

#from time import gmtime,strftime

## Common Header Comment

str_head    = "/*****************************************************";

str_author  = "** Author: J.Hu";

str_date    = "** Date: "+strftime("%Y-%m-%d", gmtime());

str_copyright="** Copyright(c) All Rights Reserved.";

str_head_end= "*****************************************************/";

str_headtext = (str_head, str_author, str_date, str_copyright, str_head_end);

## Source FIle

strc_include = "/***** Include files ********************************/";

strc_const   = "/***** Define constant ******************************/";

strc_struct  = "/***** Define structure *****************************/";

strc_protype = "/***** Define Prototype of functions ****************/";

strc_global  = "/***** Define global ********************************/";

str_cfile = (strc_include, strc_const, strc_struct, strc_protype, strc_global);

## Header File

strh_include = "/***** INCLUDES *************************************/";

strh_typedef = "/***** TYPEDEFS *************************************/";

strh_def     = "/***** DEFINES **************************************/";

strh_ex_var  = "/***** EXTERNAL VARIABLES ***************************/";

strh_ex_fun  = "/***** EXTERNAL FUNCTIONS ***************************/";

strh_var     = "/***** VARIABLES ************************************/";

strh_fun     = "/***** PROTOTYPES ***********************************/";

strh_const   = "/***** CONSTANTS ************************************/";

str_hfile = (strh_include, strh_typedef, strh_def, strh_ex_var, strh_ex_fun, strh_var, strh_fun, strh_const);

# Creat C File.

def file_init_c(src):

fp = open(src,‘w‘);

for text in str_headtext:

fp.write(text+"\n");

for text in str_cfile:

fp.write(text+"\r\n");

fp.close();

# Creat H File

def file_init_h(src, file_name):

fp = open(src,‘w‘);

for text in str_headtext:

fp.write(text+"\n");

text = "#ifndef "+"_"+file_name+"_H_"+"\r"

fp.write(text);

text = "#define "+"_"+file_name+"_H_"+"\r"

fp.write(text);

for text in str_hfile:

fp.write(text+"\r\n");

text = "#endif /* "+"_"+file_name+"_H_"+" */\r\n";

fp.write(text);

fp.close();

def make_file(src):

#is Exist:

if os.path.exists(src):

print "path:[%s] is exist" %src;

return (False,0);

#Get File Path and File

file_path,file_namefull = os.path.split(src);

#get file Name and file type

file_name,file_type = os.path.splitext(file_namefull);

file_type = file_type.lower();

if file_type == ‘.c‘:

return (True, file_init_c(src));

elif file_type == ‘.h‘:

file_name = file_name.upper();

return (True, file_init_h(src,file_name));

else:

print "not object";

return (False,0);

if __name__ == ‘__main__‘:

# main program

file_name = raw_input("Please Input File Name:");

ret, func = make_file(file_name);

if ret:

func;

时间: 2024-10-17 03:25:36

Python自動生成.c .h 文件模板的相关文章

python 项目自动生成 requirements.txt 文件

生成 requirements.txt 文件的目的: 安装 pthon 项目时需要把此项目所有依赖的第三方包安装完成.项目依赖的第三方包统一放到 requirements.txt 文件中即可. 怎么自动生成 requirements.txt 文件? 安装 pipreqs 第三方包:pip install pipreqs 在 setup.py 文件的路径下执行命令:pipreqs . 项目结构如下: 原文地址:https://www.cnblogs.com/ronky/p/9777057.html

python 压缩每周生成的数据文件

为了便于整理部分业务数据,以及存储管理, 写了此脚本.后期如果有需求,再改一下. 1 #!/usr/bin/env python 2 #coding:utf8 3 4 import os,sys,time,commands,shutil,glob 5 import datetime 6 7 8 class FileSuo: 9 10 def __init__(self,dir): 11 self.dir = dir 12 13 def getfile(self): 14 for root,dir

使用pyinstaller打包Python应用,生成EXE执行文件

在命令行中切换到要打包的程序所在目录,或者在程序目录打开命令行,直接输入下面的指令即可pyinstaller -F xxx.py pyinstaller -F -w -i manage.ico app.py -F:打包为单文件-w:Windows程序,不显示命令行窗口-i:是程序图标,app.py是你要打包的py文件 来自 <https://www.zhihu.com/question/31784262 有fail to excute问题直接命令行 pyinstaller xxx.py

Eclipse4.7使用基础 修改生成的.java文件模板,添加作者信息与创建时间

os :windows7 x64    jdk:jdk-8u131-windows-x64    ide:Eclipse Oxygen Release (4.7.0) referenceLinking:http://jingyan.baidu.com/article/fc07f98965961d12ffe519bb.html step_1 step_2 step_3 step_4 将其编辑为 ${filecomment} ${package_declaration} /** * JavaSE8基

编译过程中,termcap.h 文件找不到路径 licli.a终于生成

编译过程中,termcap.h      文件找不到路径 查看是linux  源码下找不到termcap.h文件 安装了所有关于*cap*的源码包也不起作用 今天终于解决了这个问题,搜termcap.h  发现一篇文章,如下 ----------------------------------------------------------------------------------------- 安装minicom2.3出现termcap.h错误解决方法 2010-05-06 17:12:

使用javah生成.h文件, 出现无法访问android.app,Activity的错误的解决

在工程ndk22/bin/classes中 运行javah  com.cn.ndk22.Ndk22.Activity ,出现了.h文件 我在bin/classes目录中 ,就是无法访问, : 错误:无法访问android.app.Activity 找不到android.app.Activity 如下图所示 于是我cmd定位到ndk/src,中运行 javah com.heima.ndk.ndkActivity, 成功了就能成功了 ...我也不知道为什么.,如下图 总结:  使用javah生成.h

python读取和生成excel文件

今天来看一下如何使用python处理excel文件,处理excel文件是在工作中经常用到的,python为我们考虑到了这一点,python中本身就自带csv模块. 1.用python读取csv文件: csv是逗号分隔符格式 一般我们用的execl生成的格式是xls和xlsx  直接重命名为csv的话会报错: Error: line contains NULL byte insun解决方案:出错原因是直接是把后缀为xls的execl文件重命名为csv的 正常的要是另存为csv文件 就不会报错了 譬

t4模板生成 _references.js 文件

t4模板功能: 指定目录,自动生成 _references.js 文件 相关文件说明: _references.js 实现js智能提示. 注意事项: hostspecific="true" <#@ template debug="false" hostspecific="true" language="C#" #> projectDir=Host.ResolveAssemblyReference("$(P

windows 10(64位)下实现vs20120C++调用matlab r2014a编写的m文件生成的.dll,.lib,.h文件

如题. 环境:windows10 64位,vs 2010,matlab r2014a,配置成功,生成.dll,.h,.lib文件成功. 步骤一:matlab动态链接库文件编译生成 1)编写示例文件add.m function c = add(a, b); c = a + b; end; 2)编译打包 进入matlab主界面,在控制台输入deploytool命令,调用打包程序,选择"Library Compiler": 3)进入库文件编译程序界面,根据需要勾选C++ Shared Lib