2011-05-08 84 views
0

有人可以告訴我爲什麼這段代碼給我一個錯誤「使用未聲明的標識符baseURL」?和「意外的接口名稱NSString,預期的表達式」。NSString和concantenation的問題

NSString *baseURL = [NSString stringWithString:@"http://www.myserver.net/somephp"]; 
NSString *finalURL = [baseURL stringByAppendingString:@"?i="]; 

我已經看了很多次,我很難過。

這裏是整個代碼塊

switch (type) { 
    case 1: 
     NSString *baseURL = [NSString stringWithString:@"http://www.myserver.net/somephp/"]; 
     NSString *finalURL = [baseURL stringByAppendingString:@"?i="]; 
     break; 
    case 2: 
     NSString *finalURL = [baseURL stringByAppendingString:@"?n="]; 
     break; 
    default: 
     break; 
} 
+0

該代碼完美工作。你是否使用相同的變量名創建了其他實例?你能發佈任何其他相關的錯誤代碼嗎? – 2011-05-08 19:28:22

+0

這是在'switch'語句中嗎? – albertamg 2011-05-08 19:32:39

回答

2

聽起來像那些行是switch語句中。如果是這種情況,請移動switch聲明之外的字符串聲明。

NSString *baseURL; 
NSString *finalURL; 
switch (<expression>) { 
    case <constant>: 
     baseURL = [NSString stringWithString:@"http://www.myserver.net/somephp"]; 
     finalURL = [baseURL stringByAppendingString:@"?i="]; 
     break; 
    default: 
     break; 
} 

更多的信息和其他技術來解決這個問題this question

+0

完美謝謝! – Weston 2011-05-08 19:43:52

+0

@Kronusdark歡迎您:) – albertamg 2011-05-08 19:45:54