1. 程式人生 > >有關 find() 函式的返回值

有關 find() 函式的返回值

find():查詢成功時返回所在位置,失敗返回string::npos的值

但是,失敗這個我一直處理不好。稍稍小總結一下吧。

以vector為例:

vector<int>::iterator pos;
pos=find(v.begin(),v.end(),10);
if( pos != v.end() )//查詢成功
{
    cout<<pos-v.begin()<<endl;//注意輸出的寫法,因為pos是迭代器;//輸出位置
    cout<<*pos<<endl;    //輸出查詢元素;這裡是10
}

而如果沒有查詢到,則返回string::npos,這是一個很大的數,其值不需要知道。所以,可能一般都是作為-1處理了。

string類為例:這裡定義的是int型了

string s="Hello World!";
string s1="llo";
int pos;
pos=s.find(s1);
if(pos==-1)
    cout<<"not find"<<endl;
else
    cout<<"position= "<<pos<<endl;

相關推薦

有關 find() 函式返回

find():查詢成功時返回所在位置,失敗返回string::npos的值 但是,失敗這個我一直處理不好。稍稍小總結一下吧。 以vector為例: vector<int>::iterator pos; pos=find(v.begin(),v.end(),1

Python小白學習之路(十)—【函式】【函式返回】【函式引數】

寫在前面: 昨天早睡之後,感覺今天已經恢復了百分之八十的樣子 又是活力滿滿的小夥郭 今日份雞湯: 我始終相信,在這個世界上,一定有另一個自己,在做著我不敢做的事,在過著我想過的生活。-------宮崎駿 函式 一、函數出現的背景 在學習函式之前,一直遵循:面向過程程式設計,即:根據業務邏輯從上到

recv函式返回總結

函式原型:int recv( SOCKET s, char *buf, int  len, int flags) 功能:不論是客戶還是伺服器應用程式都用recv函式從TCP連線的另一端接收資料。 引數一:指定接收端套接字描述符; 引數二:指明一個緩衝區,該緩衝區用來存放recv

C# socket 程式設計之 accept() 函式返回解析

accept() 函式會返回一個新的套接字,這個新的套接字在伺服器端與客戶端進行通訊。 伺服器端的繫結監聽是一個套接字,與客戶端通訊的是另一個套接字(accept函式返回的套接字,注意這裡不是返回客戶端的套接字,返回的套接字是新建立在伺服器上的,與客戶端收發訊息用的) 下面這段程式碼,是

recv函式返回說明

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

opencv之type()函式返回對應表

opencv之type()函式返回值對應表 cv::Mat 類的物件有一個成員函式 type() 用來返回矩陣元素的資料型別,返回值是 int 型別,不同的返回值代表不同的型別。 int Mat::type() const 返回值與具體型別對應關係表: | |C1| C2| C3| C4| --|--|

建構函式返回

建構函式返回值 For purposes other than simple initialization, classes can have constructors. Constructors are blocks of statements that can be used to in

按鍵精靈Q語言-怎麼使用自定義函式返回

按鍵精靈怎麼使用自定義函式返回值? a i MessageBox i Function a(i) i=100 End Function 就是想彈出100 aiMessageBoxiFunctiona(i)i=100EndFunction就是想讓它彈出的是100怎麼獲得自定義函式中的值呢?...展

風火程式設計--flask檢視函式返回

flask檢視函式返回json資料 原始模式 data_json = json.dumps({"errcode": "0", "errms": "成功", "data": data}) return data_json, 200, {"Contant-Type": "Applic

C++ 引用作為函式返回

(1)以引用返回函式值,定義函式時需要在函式名前加 & (2)用引用返回一個函式值的最大好處是,在記憶體中不產生被返回值的副本。 引用作為返回值,必須遵守以下規則: (1)不能返回區域性變數的引用。主要原因是區域性變數會在函式返回後被銷燬,因此被返回的引用就成為了

函式的文件說明,函式引數,函式返回

def test(a,b): … “用來完成對2個數求和” … print("%d"%(a+b)) … test(11,22) 33 如果執行,以下程式碼 h

引用作為函式返回的分析

  例如,下面的程式是有關引用返回的4種形式:     //*********************     //**   ch9_6.cpp  **     //*******************

solidity智慧合約[28]-函式返回

函式返回值一般形式 12345678910 function  resValue() pure public returns(uint){    uint a = 10;    return a;}function &nb

Python函式中的變數和函式返回

1.函式的變數 區域性變數和全域性變數: Python中的任何變數都有特定的作用域 在函式中定義的變數一般只能在該函式內部使用,這些只能在程式的特定部分使用的變數我們稱之為區域性變數 在一個檔案頂部定義的變數可以供檔案中的任何函式呼叫,這些可以為整個程式所使用的變數稱為全域性變數。

Java函式返回的“魔術”轉型

先看一段程式碼: public Object get(String name) {   return map.get(name); } 其中獲取的返回值,可能是字串,也可能是數字等等。那麼呼叫它的程式碼,可能就充斥著各種各樣的轉型: String value1 = (String)get

函式返回案例

//求2個數字的差的function getNumber(num1,num2) { return num1-num2;}console.log(getNumber(10,20));//求一組數字中的最大值function getMax(num) { 定義變數假設這個值是最大值 var max

jquery find(),eq() 返回問題

之前一直以為find()函式返回的是一個數組型別,並不是jquery物件,後來在開發中發現有的程式碼體現的並不是陣列型別,就一直存在疑惑,現在做個總結。 直接上程式碼 <!DOCTYPE html> <html> <head> <scri

Typescript | 箭頭函式返回

/* * @Author: AK-12 * @Date: 2018-11-01 20:07:29 * @Last Modified by: AK-12 * @Last Modified time: 2018-11-01 22:00:41 */ import IBlock from '.

14. 函式返回為引用?

函式返回值可以是引用嗎? 當然可以,只是在函式返回引用的時候需要注意幾點。以下給出討論! 函式在返回值的時候,會產生一個臨時變數作為函式返回值的副本;而函式在返回引用的時候,不會產生副本!那麼既然是

目前無法從修改區塊鏈的函式返回

參考文件: 當呼叫一個合約的方法。這個方法想返回值。有2種情況: 1、如果這個方法中修改了合約資料。那隻能通過event返回值。 2、如果這個方法沒有修改區塊資料,那直接可以返回值。 例子 pragma solidity ^0.4.25; contract Assert{ }