⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 step11.cpp

📁 mini http server,可以集成嵌入到程序中,实现简单的web功能
💻 CPP
字号:

/*
 * Step11:
 * File path and extension manipulation.
 */

#include <iostream.h>
#include <stdlib.h>
#include <string.h>

#include "PiAPI.h"
#include "TestOS.h"

int iRet;

int TestPath(
		const char *pIn,
		const char *pPath,
		const char *pName,
		const char *pRoot,
		const char *pExtn,
		int iStamp )
{
	PIFInfo *pInfo = PIFInfo_new( pIn );
	if ( !pInfo ) 
		{ FAILED( iStamp+1 ); goto done; };

#if 0
	cout << "Path: '" << PIFInfo_getPath( pInfo ) << "'" << endl;
	cout << "Name: '" << PIFInfo_getName( pInfo ) << "'" << endl;
	cout << "Root: '" << PIFInfo_getPathRoot( pInfo ) << "'" << endl;
	cout << "Extn: '" << PIFInfo_getExtension( pInfo ) << "'" << endl;
#endif

	if ( strcmp( PIFInfo_getName( pInfo ), pName ) )
		{
		cout << "'" << PIFInfo_getName( pInfo ) << "'" << endl;
		FAILED( iStamp+2 );
		goto done;
		};

	if ( strcmp( PIFInfo_getPath( pInfo ), pPath ) )
		{
		cout << "'" << PIFInfo_getPath( pInfo ) << "'" << endl;
		FAILED( iStamp+3 );
		goto done;
		};

	if ( strcmp( PIFInfo_getPathRoot( pInfo ), pRoot ) )
		{
		cout << "'" << PIFInfo_getPathRoot( pInfo ) << "'" << endl;
		FAILED( iStamp+4 );
		goto done;
		};

	if ( strcmp( PIFInfo_getExtension( pInfo ), pExtn ) )
		{
		cout << "'" << PIFInfo_getExtension( pInfo ) << "'" << endl;
		FAILED( iStamp+5 );
		goto done;
		};

	return 1;

done:
	if ( PIFInfo_delete( pInfo ) )
		{ FAILED( iStamp+10 ); };
	return 0;
}
	
#define IN1		"/tmp/test.txt"
#define PATH1	"/tmp/test.txt"
#define NAME1	"test.txt"
#define ROOT1	"/tmp"
#define EXTN1	"txt"

#define IN2		"/tmp/test"
#define PATH2 	"/tmp/test"
#define NAME2	"test"
#define ROOT2	"/tmp"
#define EXTN2	""

#define IN3		"/tmp/test/"
#define PATH3	"/tmp/test"
#define NAME3	"test"
#define ROOT3	"/tmp"
#define EXTN3	""

void Step11()
{
	TestPath( IN1, PATH1, NAME1, ROOT1, EXTN1, 10 );
	TestPath( IN2, PATH2, NAME2, ROOT2, EXTN2, 20 );
	TestPath( IN3, PATH3, NAME3, ROOT3, EXTN3, 30 );
	OK;
}

int main()
{
	if ( PIPlatform_enter( "dummy", PIPLATFORM_VERSION_1_0, Step11 ) )
		{
		cout << "Platform_enter() failed." << endl;
		FAILED(99);
		exit( 1 );
		};

	return iRet;
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -