การหาคำแรกในบรรทัด

ในหลายโปรแกรมจะมีการอ่านค่าพารามิเตอร์จาก text file โดยที่จะมีชื่อของพารามิเตอร์หรือตัวแปรอยู่ใน column แรกและค่าที่เราจะส่งผ่านเข้าในโปรแกรมจะอยู่ใน column ถัดไปโดยมี space ระหว่างตัวแปรและค่านี้ เช่น

InitialParasites         2.3*10^10

MeanAge           10

โปรแกรมเหล่านี้จะอ่านค่า input จาก text file ทีละบรรทัดโดยจะมีการหาว่าตัวแปรที่โปรแกรมต้องการแต่ละตัวอยู่ในบรรทัดใด จากนั้นก็จะส่งผ่านค่าไปให้ตัวพารามิเตอร์ตัวนั้นในโปรแกรม

นี่เป็นตัวอย่างภาษา C ที่ใช้ในการหาคำแรก (พารามิเตอร์) จากบรรทัดที่อ่านเข้ามา (source) ตัวอย่างนี้มีการใช้ isspace ซึ่งเป็น function ที่ใช้ในการหา white space หรือที่ว่างระหว่างคำ เช่น ‘ ‘ , ‘\t’, ‘\n’, ‘\v’, ‘\f’, ‘\r’  (ต้องมีการโหลด ctype.h หรือ cctype ก่อนครับ)

//find the first word from a line
void find_first_word(char *source, char *word)
{
int i=0;    //  Position within source
int j=0;    //  Position within word

/*  Skip leading white space                    */
while((source[i] != ‘\0’) && isspace(source[i]))
i++;

/*  Copy the word                        */
while((source[i] != ‘\0′) && !isspace(source[i]))
{
word[j]=source[i];
i++;
j++;
}

word[j]=’\0’;

return;
}

One thought on “การหาคำแรกในบรรทัด”

Comments are closed.

%d bloggers like this: